{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Compare correlated predictions\n",
    "\n",
    "This is really the key notebook for \"The Historical Significance of Textual Distances,\" because it documents some new measures of textual distance that I'm introducing and championing as valuable options. They depend on correlations between the predictions of different predictive models.\n",
    "\n",
    "Let's start by importing everything we might conceivably need."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import csv, random\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "import math, sys\n",
    "from collections import Counter\n",
    "from scipy import spatial\n",
    "from matplotlib import pyplot as plt\n",
    "from scipy.stats import pearsonr\n",
    "%matplotlib inline\n",
    "from sklearn.manifold import MDS\n",
    "import statsmodels.api as sm"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### The names of genres\n",
    "\n",
    "There are three categories of genres in this experiment.\n",
    "\n",
    "1. Primary genres; our main samples of \"subject\" and \"genre\" categories from HathiTrust. Each 100 volumes in length, with a few minor fluctuations.\n",
    "\n",
    "2. \"B Genres,\" secondary (non-overlapping) samples of the primary categories.\n",
    "\n",
    "3. \"Intersection genres,\" which should really be called \"symmetric difference\" genres, because they are the opposite of an intersection. When we compare e.g. \"Psychological fiction\" to \"Love stories,\" we encounter the complication that some books are both. This is an important fact about genre, but also the source of our evidence about social proximity, and when comparing textual distance to social proximity we want to avoid circularity. So we need the option to compare samples that are non-overlapping, not only in the sense that they don't contain the same books, but in the sense that our sample of psychological fiction contains no love stories, and vice versa. To do this, we exclude psychological fic from the love story model, and make up the deficit with a special \"intersection genre\" labeled Love-Not-Psychological--an implausible assertion in itself, but indicating here a small group of books randomly samples from \"love stories minus the ones tagged as psychological."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "genrenamedf = pd.read_csv('../metadata/selected_genres.tsv', sep = '\\t')\n",
    "primaries = genrenamedf.loc[genrenamedf.genretype == 'primary', 'genre'].tolist()\n",
    "bgenres = genrenamedf.loc[genrenamedf.genretype == 'B genre', 'genre'].tolist()\n",
    "intersection_genres = set(genrenamedf.loc[genrenamedf.genretype == 'intersection', 'genre'].tolist())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Load predictive results\n",
    "\n",
    "A lot of the heavy lifting is done outside this notebook; see the ```../logistic``` subdirectory, especially ```genre_experiement.py```, and in particular, these lines of code from the function ```get_divergence()```:\n",
    "\n",
    "    model1on2 = versatiletrainer2.apply_pickled_model(model1, '../data/', '.tsv', meta2)\n",
    "    model2on1 = versatiletrainer2.apply_pickled_model(model2, '../data/', '.tsv', meta1)\n",
    "\n",
    "    spearman1on2 = np.arctanh(stats.spearmanr(model1on2.probability, model1on2.alien_model)[0])\n",
    "    spearman2on1 = np.arctanh(stats.spearmanr(model2on1.probability, model2on1.alien_model)[0])\n",
    "    spearman = (spearman1on2 + spearman2on1) / 2\n",
    "\n",
    "What's happening there is that we compare a model trained on one pair of positive / negative classes, and apply it to a different pair of positive / negative classes. The negative sets will be different random samples of HathiTrust fiction; the positive sets will be different genre categories. Volumes in pos and neg sets are always selected to have matching distributions on the timeline.\n",
    "\n",
    "Then we do Spearman correlation between the predictions of the original model and the new model being applied to old data -- in both directions. Finally a [Fisher z-transformation](https://en.wikipedia.org/wiki/Fisher_transformation) on the correlation coefficients so they can be meaningfully averaged. This is accomplished by ```np.arctanh.```\n",
    "\n",
    "The results of these comparisons between predictions are stored in a set of \"crosscomparison\" files. In principle it could have been just one file, but there was enough compute involved here that I parallelized across a cluster, and as a result we have a couple of different sources. We want to load them all into dictionary that records the z-transformed Spearman correlations for many different genre1-genre2 comparisons."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "crossdict = dict()\n",
    "for filepath in ['../results/crosscomparisons.tsv', '../results/localcrosscomparisons.tsv', '../results/selfcrosscomparisons.tsv']:\n",
    "    crosses = pd.read_csv(filepath, sep = '\\t')\n",
    "    for idx, row in crosses.iterrows():\n",
    "        if row.testype.startswith('self'):\n",
    "            continue\n",
    "        g1 = row.name1.split('_')[0]\n",
    "        g2 = row.name2.split('_')[0]\n",
    "\n",
    "        if g1.startswith('random') or g2.startswith('random'):\n",
    "            continue\n",
    "\n",
    "        if g1 not in crossdict:\n",
    "            crossdict[g1] = dict()\n",
    "\n",
    "        if g2 not in crossdict:\n",
    "            crossdict[g2] = dict()\n",
    "\n",
    "        if g2 not in crossdict[g1]:\n",
    "            crossdict[g1][g2] = [float(row.spearman)]\n",
    "        else:\n",
    "            crossdict[g1][g2].append(float(row.spearman))\n",
    "\n",
    "        if g1 not in crossdict[g2]:\n",
    "            crossdict[g2][g1] = [float(row.spearman)]\n",
    "        else:\n",
    "            crossdict[g2][g1].append(float(row.spearman))\n",
    "\n",
    "avgcross = dict()\n",
    "for k1, v1 in crossdict.items():\n",
    "    avgcross[k1] = dict()\n",
    "    for k2, v2 in v1.items():\n",
    "        avgcross[k1][k2] = (sum(v2) / len(v2))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Converting to a grid\n",
    "\n",
    "This part is unfortunately a little fiddly. The results of predictive modeling are saved with names that are legal and easy to manage as filenames: e.g., no spaces. So the names of genres that we just loaded are not going to exactly match the names in other data structures. We'll need to \"compress\" the genre name into a \"key\" in order to retrieve it.\n",
    "\n",
    "A further complication is that the models will have used \"intersection\" (really symmetric difference) genres to supplement, in cases where two genres overlapped and the intersection had to be removed. In that case the fact will be memorialized in the name. Instead of looking for a line with \"Love stories\" and \"War fiction,\" we'll need to look for \"Love-Not-War\" and \"War-Not-Love.\"\n",
    "\n",
    "The results are saved in a dictionary called ```sansoverlap``` for the slightly twisted reason that it contrasts to another one called ```withoverlap.```"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Lacking a B version: Biographical\n",
      "Lacking a B version: Adventure\n",
      "Lacking a B version: Horror\n",
      "Lacking a B version: Christian\n",
      "Lacking a B version: Western\n",
      "Lacking a B version: Political\n",
      "Lacking a B version: War\n"
     ]
    }
   ],
   "source": [
    "def compress(aname):\n",
    "    aname = aname.replace(':', '')\n",
    "    aname = aname.replace(' ', '')\n",
    "    aname = aname.replace(',', '')\n",
    "    return aname\n",
    "\n",
    "sansoverlap = dict()\n",
    "\n",
    "for g1 in primaries:\n",
    "    if g1.startswith('random'):\n",
    "        continue\n",
    "    sansoverlap[g1] = dict()\n",
    "    \n",
    "    for g2 in primaries:\n",
    "        intersected = g1 + '-Not-' + g2\n",
    "        flipintersect = g2 + '-Not-' + g1\n",
    "        \n",
    "        if g2.startswith('random'):\n",
    "            continue \n",
    "            \n",
    "        if g1 == g2:\n",
    "            bversion = g1 + ' B'\n",
    "            if bversion in bgenres:\n",
    "                sanskey1 = compress(g1)\n",
    "                sanskey2 = compress(bversion)\n",
    "            else:\n",
    "                print(\"Lacking a B version:\", g1)\n",
    "                # This genre lacks a B version and won't have\n",
    "                # a meaningful self-similarity prediction.\n",
    "                \n",
    "                sansoverlap[g1][g1] = float('nan')\n",
    "                continue  \n",
    "                \n",
    "        elif intersected in intersection_genres:\n",
    "            sanskey1 = compress(intersected)\n",
    "            sanskey2 = compress(flipintersect)\n",
    "            \n",
    "        else:\n",
    "            sanskey1 = compress(g1)\n",
    "            sanskey2 = compress(g2)\n",
    "\n",
    "        if sanskey1 in avgcross and sanskey2 in avgcross[sanskey1]:\n",
    "            sansoverlap[g1][g2] = avgcross[sanskey1][sanskey2]\n",
    "        else:\n",
    "            sansoverlap[g1][g2] = float('nan')\n",
    "            print('error', g1, g2, key1, key2)\n",
    "        \n",
    "        \n",
    "        "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Dictionary grid --> DataFrame\n",
    "\n",
    "Notice that the genres without a B version get NaN for self-similarity.\n",
    "\n",
    "The values in the cells are average Spearman correlations between the predictions of the two models. But they have also passed through a Fisher's z-transform. Like ordinary correlation coefficients, they can be negative or positive. But they can exceed 1 and -1, because of the z-transform."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Adventure</th>\n",
       "      <th>Bildungsroman</th>\n",
       "      <th>Biographical</th>\n",
       "      <th>Christian</th>\n",
       "      <th>Domestic</th>\n",
       "      <th>Fantasy</th>\n",
       "      <th>Historical</th>\n",
       "      <th>Horror</th>\n",
       "      <th>Humor</th>\n",
       "      <th>Juvenile</th>\n",
       "      <th>...</th>\n",
       "      <th>Subj: Humor</th>\n",
       "      <th>Subj: Juvenile</th>\n",
       "      <th>Subj: Man-woman</th>\n",
       "      <th>Subj: SF, American</th>\n",
       "      <th>Subj: SF, Other</th>\n",
       "      <th>Subj: Short stories, American</th>\n",
       "      <th>Subj: Short stories, Other</th>\n",
       "      <th>Suspense</th>\n",
       "      <th>War</th>\n",
       "      <th>Western</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Adventure</th>\n",
       "      <td>NaN</td>\n",
       "      <td>-0.072170</td>\n",
       "      <td>-0.012725</td>\n",
       "      <td>-0.088186</td>\n",
       "      <td>-0.365386</td>\n",
       "      <td>0.483794</td>\n",
       "      <td>0.219677</td>\n",
       "      <td>0.541967</td>\n",
       "      <td>0.034001</td>\n",
       "      <td>0.183723</td>\n",
       "      <td>...</td>\n",
       "      <td>0.100743</td>\n",
       "      <td>0.149980</td>\n",
       "      <td>-0.464529</td>\n",
       "      <td>0.744202</td>\n",
       "      <td>0.875582</td>\n",
       "      <td>0.260021</td>\n",
       "      <td>-0.372226</td>\n",
       "      <td>0.800998</td>\n",
       "      <td>0.501488</td>\n",
       "      <td>0.547864</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Bildungsroman</th>\n",
       "      <td>-0.072170</td>\n",
       "      <td>0.752103</td>\n",
       "      <td>-0.242454</td>\n",
       "      <td>-0.098786</td>\n",
       "      <td>0.581483</td>\n",
       "      <td>-0.265496</td>\n",
       "      <td>-0.268682</td>\n",
       "      <td>-0.002656</td>\n",
       "      <td>0.116057</td>\n",
       "      <td>0.022433</td>\n",
       "      <td>...</td>\n",
       "      <td>0.084803</td>\n",
       "      <td>0.174567</td>\n",
       "      <td>0.256679</td>\n",
       "      <td>-0.150948</td>\n",
       "      <td>-0.260595</td>\n",
       "      <td>0.382052</td>\n",
       "      <td>-0.252510</td>\n",
       "      <td>-0.085074</td>\n",
       "      <td>-0.294687</td>\n",
       "      <td>0.020310</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Biographical</th>\n",
       "      <td>-0.012725</td>\n",
       "      <td>-0.242454</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0.173314</td>\n",
       "      <td>-0.327723</td>\n",
       "      <td>0.536520</td>\n",
       "      <td>0.696117</td>\n",
       "      <td>0.096480</td>\n",
       "      <td>-0.427395</td>\n",
       "      <td>-0.179598</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.271567</td>\n",
       "      <td>-0.238282</td>\n",
       "      <td>-0.304188</td>\n",
       "      <td>-0.043181</td>\n",
       "      <td>-0.089314</td>\n",
       "      <td>-0.041788</td>\n",
       "      <td>0.183456</td>\n",
       "      <td>-0.461443</td>\n",
       "      <td>0.430995</td>\n",
       "      <td>0.220774</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Christian</th>\n",
       "      <td>-0.088186</td>\n",
       "      <td>-0.098786</td>\n",
       "      <td>0.173314</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0.021791</td>\n",
       "      <td>0.362902</td>\n",
       "      <td>0.276808</td>\n",
       "      <td>0.021624</td>\n",
       "      <td>-0.101902</td>\n",
       "      <td>0.357926</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.353772</td>\n",
       "      <td>0.222926</td>\n",
       "      <td>0.118027</td>\n",
       "      <td>0.245135</td>\n",
       "      <td>0.099948</td>\n",
       "      <td>-0.141680</td>\n",
       "      <td>-0.407849</td>\n",
       "      <td>0.012638</td>\n",
       "      <td>-0.020547</td>\n",
       "      <td>0.271194</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Domestic</th>\n",
       "      <td>-0.365386</td>\n",
       "      <td>0.581483</td>\n",
       "      <td>-0.327723</td>\n",
       "      <td>0.021791</td>\n",
       "      <td>0.943536</td>\n",
       "      <td>-0.467619</td>\n",
       "      <td>-0.171254</td>\n",
       "      <td>-0.184249</td>\n",
       "      <td>0.217702</td>\n",
       "      <td>0.185440</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.069471</td>\n",
       "      <td>0.308703</td>\n",
       "      <td>0.519592</td>\n",
       "      <td>-0.255644</td>\n",
       "      <td>-0.462879</td>\n",
       "      <td>0.292616</td>\n",
       "      <td>-0.229332</td>\n",
       "      <td>-0.016491</td>\n",
       "      <td>-0.314358</td>\n",
       "      <td>0.002859</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Fantasy</th>\n",
       "      <td>0.483794</td>\n",
       "      <td>-0.265496</td>\n",
       "      <td>0.536520</td>\n",
       "      <td>0.362902</td>\n",
       "      <td>-0.467619</td>\n",
       "      <td>1.335442</td>\n",
       "      <td>0.549064</td>\n",
       "      <td>0.687013</td>\n",
       "      <td>-0.312604</td>\n",
       "      <td>0.034995</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.454329</td>\n",
       "      <td>-0.002955</td>\n",
       "      <td>-0.255082</td>\n",
       "      <td>0.960463</td>\n",
       "      <td>1.167167</td>\n",
       "      <td>-0.067549</td>\n",
       "      <td>-0.158386</td>\n",
       "      <td>-0.005233</td>\n",
       "      <td>0.504644</td>\n",
       "      <td>0.488347</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Historical</th>\n",
       "      <td>0.219677</td>\n",
       "      <td>-0.268682</td>\n",
       "      <td>0.696117</td>\n",
       "      <td>0.276808</td>\n",
       "      <td>-0.171254</td>\n",
       "      <td>0.549064</td>\n",
       "      <td>0.902016</td>\n",
       "      <td>-0.025590</td>\n",
       "      <td>-0.510945</td>\n",
       "      <td>0.344883</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.414515</td>\n",
       "      <td>0.328506</td>\n",
       "      <td>-0.374842</td>\n",
       "      <td>-0.141440</td>\n",
       "      <td>-0.126151</td>\n",
       "      <td>-0.131110</td>\n",
       "      <td>0.003690</td>\n",
       "      <td>-0.214186</td>\n",
       "      <td>0.486578</td>\n",
       "      <td>0.649634</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Horror</th>\n",
       "      <td>0.541967</td>\n",
       "      <td>-0.002656</td>\n",
       "      <td>0.096480</td>\n",
       "      <td>0.021624</td>\n",
       "      <td>-0.184249</td>\n",
       "      <td>0.687013</td>\n",
       "      <td>-0.025590</td>\n",
       "      <td>NaN</td>\n",
       "      <td>-0.087847</td>\n",
       "      <td>-0.117164</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.260145</td>\n",
       "      <td>-0.142979</td>\n",
       "      <td>-0.184749</td>\n",
       "      <td>0.923588</td>\n",
       "      <td>0.939425</td>\n",
       "      <td>0.349977</td>\n",
       "      <td>-0.173057</td>\n",
       "      <td>0.479396</td>\n",
       "      <td>0.192900</td>\n",
       "      <td>0.281497</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Humor</th>\n",
       "      <td>0.034001</td>\n",
       "      <td>0.116057</td>\n",
       "      <td>-0.427395</td>\n",
       "      <td>-0.101902</td>\n",
       "      <td>0.217702</td>\n",
       "      <td>-0.312604</td>\n",
       "      <td>-0.510945</td>\n",
       "      <td>-0.087847</td>\n",
       "      <td>1.138995</td>\n",
       "      <td>-0.091322</td>\n",
       "      <td>...</td>\n",
       "      <td>1.042515</td>\n",
       "      <td>-0.164752</td>\n",
       "      <td>0.291022</td>\n",
       "      <td>0.011838</td>\n",
       "      <td>-0.012730</td>\n",
       "      <td>-0.021625</td>\n",
       "      <td>-0.547463</td>\n",
       "      <td>0.203187</td>\n",
       "      <td>-0.361391</td>\n",
       "      <td>-0.310805</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Juvenile</th>\n",
       "      <td>0.183723</td>\n",
       "      <td>0.022433</td>\n",
       "      <td>-0.179598</td>\n",
       "      <td>0.357926</td>\n",
       "      <td>0.185440</td>\n",
       "      <td>0.034995</td>\n",
       "      <td>0.344883</td>\n",
       "      <td>-0.117164</td>\n",
       "      <td>-0.091322</td>\n",
       "      <td>1.040070</td>\n",
       "      <td>...</td>\n",
       "      <td>0.220420</td>\n",
       "      <td>1.251842</td>\n",
       "      <td>-0.375056</td>\n",
       "      <td>0.012056</td>\n",
       "      <td>-0.012016</td>\n",
       "      <td>0.158342</td>\n",
       "      <td>-0.068255</td>\n",
       "      <td>0.027415</td>\n",
       "      <td>0.234068</td>\n",
       "      <td>0.362044</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Love</th>\n",
       "      <td>-0.197751</td>\n",
       "      <td>0.299520</td>\n",
       "      <td>0.013685</td>\n",
       "      <td>0.355099</td>\n",
       "      <td>0.482635</td>\n",
       "      <td>0.062556</td>\n",
       "      <td>-0.098608</td>\n",
       "      <td>0.092822</td>\n",
       "      <td>0.150789</td>\n",
       "      <td>-0.186289</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.371044</td>\n",
       "      <td>-0.076187</td>\n",
       "      <td>0.702951</td>\n",
       "      <td>0.035332</td>\n",
       "      <td>-0.109698</td>\n",
       "      <td>0.011472</td>\n",
       "      <td>-0.508129</td>\n",
       "      <td>-0.062171</td>\n",
       "      <td>-0.198239</td>\n",
       "      <td>0.102968</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Mystery</th>\n",
       "      <td>0.505942</td>\n",
       "      <td>0.046627</td>\n",
       "      <td>-0.344855</td>\n",
       "      <td>-0.054455</td>\n",
       "      <td>0.086565</td>\n",
       "      <td>-0.162077</td>\n",
       "      <td>-0.201735</td>\n",
       "      <td>0.300864</td>\n",
       "      <td>0.359944</td>\n",
       "      <td>-0.021264</td>\n",
       "      <td>...</td>\n",
       "      <td>0.261903</td>\n",
       "      <td>-0.082738</td>\n",
       "      <td>0.000384</td>\n",
       "      <td>0.061832</td>\n",
       "      <td>0.150294</td>\n",
       "      <td>0.035091</td>\n",
       "      <td>-0.750404</td>\n",
       "      <td>1.112460</td>\n",
       "      <td>-0.220826</td>\n",
       "      <td>0.112403</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Novel</th>\n",
       "      <td>0.105420</td>\n",
       "      <td>-0.126437</td>\n",
       "      <td>0.130448</td>\n",
       "      <td>0.102202</td>\n",
       "      <td>-0.120390</td>\n",
       "      <td>0.132852</td>\n",
       "      <td>0.064322</td>\n",
       "      <td>0.416615</td>\n",
       "      <td>0.014659</td>\n",
       "      <td>0.043407</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.141713</td>\n",
       "      <td>-0.048442</td>\n",
       "      <td>-0.183073</td>\n",
       "      <td>0.258302</td>\n",
       "      <td>0.268316</td>\n",
       "      <td>-0.058580</td>\n",
       "      <td>-0.277479</td>\n",
       "      <td>0.100347</td>\n",
       "      <td>0.181652</td>\n",
       "      <td>0.240374</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Political</th>\n",
       "      <td>0.153344</td>\n",
       "      <td>-0.274706</td>\n",
       "      <td>-0.048713</td>\n",
       "      <td>-0.056673</td>\n",
       "      <td>-0.252530</td>\n",
       "      <td>0.066620</td>\n",
       "      <td>-0.058898</td>\n",
       "      <td>0.078068</td>\n",
       "      <td>0.327187</td>\n",
       "      <td>-0.487879</td>\n",
       "      <td>...</td>\n",
       "      <td>0.255315</td>\n",
       "      <td>-0.612336</td>\n",
       "      <td>-0.006155</td>\n",
       "      <td>0.354827</td>\n",
       "      <td>0.424520</td>\n",
       "      <td>-0.188444</td>\n",
       "      <td>-0.505973</td>\n",
       "      <td>0.512900</td>\n",
       "      <td>0.182516</td>\n",
       "      <td>-0.226593</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Psychological</th>\n",
       "      <td>-0.029471</td>\n",
       "      <td>0.437425</td>\n",
       "      <td>-0.406507</td>\n",
       "      <td>-0.090570</td>\n",
       "      <td>0.536463</td>\n",
       "      <td>-0.235468</td>\n",
       "      <td>-0.353435</td>\n",
       "      <td>0.232545</td>\n",
       "      <td>0.280279</td>\n",
       "      <td>-0.211551</td>\n",
       "      <td>...</td>\n",
       "      <td>0.012057</td>\n",
       "      <td>-0.132851</td>\n",
       "      <td>0.414421</td>\n",
       "      <td>0.125372</td>\n",
       "      <td>0.058868</td>\n",
       "      <td>0.192172</td>\n",
       "      <td>-0.358002</td>\n",
       "      <td>0.192025</td>\n",
       "      <td>-0.253957</td>\n",
       "      <td>-0.086895</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SF</th>\n",
       "      <td>0.820735</td>\n",
       "      <td>-0.255388</td>\n",
       "      <td>-0.186762</td>\n",
       "      <td>0.157253</td>\n",
       "      <td>-0.410694</td>\n",
       "      <td>0.893922</td>\n",
       "      <td>-0.133666</td>\n",
       "      <td>0.680758</td>\n",
       "      <td>0.121817</td>\n",
       "      <td>0.007637</td>\n",
       "      <td>...</td>\n",
       "      <td>0.018398</td>\n",
       "      <td>-0.103849</td>\n",
       "      <td>-0.092852</td>\n",
       "      <td>1.182643</td>\n",
       "      <td>1.453486</td>\n",
       "      <td>0.043937</td>\n",
       "      <td>-0.501464</td>\n",
       "      <td>0.751688</td>\n",
       "      <td>0.442724</td>\n",
       "      <td>0.279680</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Short stories</th>\n",
       "      <td>0.154007</td>\n",
       "      <td>0.140222</td>\n",
       "      <td>0.176666</td>\n",
       "      <td>-0.324154</td>\n",
       "      <td>-0.094060</td>\n",
       "      <td>0.084145</td>\n",
       "      <td>-0.004279</td>\n",
       "      <td>0.242251</td>\n",
       "      <td>-0.330409</td>\n",
       "      <td>0.083586</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.037700</td>\n",
       "      <td>0.239126</td>\n",
       "      <td>-0.314901</td>\n",
       "      <td>0.297618</td>\n",
       "      <td>0.133140</td>\n",
       "      <td>0.726931</td>\n",
       "      <td>0.556748</td>\n",
       "      <td>-0.221869</td>\n",
       "      <td>0.091763</td>\n",
       "      <td>0.308416</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Detective</th>\n",
       "      <td>0.447406</td>\n",
       "      <td>0.002468</td>\n",
       "      <td>-0.219737</td>\n",
       "      <td>-0.223415</td>\n",
       "      <td>-0.035958</td>\n",
       "      <td>-0.132834</td>\n",
       "      <td>-0.075409</td>\n",
       "      <td>0.421240</td>\n",
       "      <td>0.339656</td>\n",
       "      <td>-0.152532</td>\n",
       "      <td>...</td>\n",
       "      <td>0.209985</td>\n",
       "      <td>-0.104154</td>\n",
       "      <td>-0.279632</td>\n",
       "      <td>0.144686</td>\n",
       "      <td>0.171874</td>\n",
       "      <td>0.126269</td>\n",
       "      <td>-0.476567</td>\n",
       "      <td>1.058940</td>\n",
       "      <td>-0.182358</td>\n",
       "      <td>0.158981</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Fairy tales</th>\n",
       "      <td>-0.167399</td>\n",
       "      <td>-0.137918</td>\n",
       "      <td>0.092702</td>\n",
       "      <td>0.025744</td>\n",
       "      <td>-0.215797</td>\n",
       "      <td>0.602875</td>\n",
       "      <td>0.190644</td>\n",
       "      <td>0.203460</td>\n",
       "      <td>-0.484346</td>\n",
       "      <td>0.651522</td>\n",
       "      <td>...</td>\n",
       "      <td>0.072939</td>\n",
       "      <td>0.682911</td>\n",
       "      <td>-0.416140</td>\n",
       "      <td>-0.012294</td>\n",
       "      <td>0.062075</td>\n",
       "      <td>0.226002</td>\n",
       "      <td>0.674164</td>\n",
       "      <td>-0.367265</td>\n",
       "      <td>-0.263040</td>\n",
       "      <td>0.077240</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Fantasy</th>\n",
       "      <td>0.520758</td>\n",
       "      <td>-0.086648</td>\n",
       "      <td>0.265348</td>\n",
       "      <td>0.112579</td>\n",
       "      <td>-0.245219</td>\n",
       "      <td>0.993454</td>\n",
       "      <td>0.190278</td>\n",
       "      <td>1.016912</td>\n",
       "      <td>-0.072096</td>\n",
       "      <td>0.245849</td>\n",
       "      <td>...</td>\n",
       "      <td>0.028712</td>\n",
       "      <td>0.242583</td>\n",
       "      <td>-0.216332</td>\n",
       "      <td>1.015745</td>\n",
       "      <td>0.889719</td>\n",
       "      <td>0.431507</td>\n",
       "      <td>-0.027357</td>\n",
       "      <td>0.133938</td>\n",
       "      <td>0.143134</td>\n",
       "      <td>0.512499</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: History</th>\n",
       "      <td>0.404821</td>\n",
       "      <td>-0.521361</td>\n",
       "      <td>0.535378</td>\n",
       "      <td>0.116843</td>\n",
       "      <td>-0.449350</td>\n",
       "      <td>0.346020</td>\n",
       "      <td>0.759888</td>\n",
       "      <td>-0.011309</td>\n",
       "      <td>-0.539294</td>\n",
       "      <td>0.417826</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.227996</td>\n",
       "      <td>0.277672</td>\n",
       "      <td>-0.587783</td>\n",
       "      <td>-0.005793</td>\n",
       "      <td>0.066833</td>\n",
       "      <td>-0.085285</td>\n",
       "      <td>0.115093</td>\n",
       "      <td>-0.033958</td>\n",
       "      <td>0.723462</td>\n",
       "      <td>0.340683</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Horror</th>\n",
       "      <td>0.422324</td>\n",
       "      <td>-0.018651</td>\n",
       "      <td>-0.124237</td>\n",
       "      <td>-0.012323</td>\n",
       "      <td>-0.162895</td>\n",
       "      <td>0.639925</td>\n",
       "      <td>-0.044933</td>\n",
       "      <td>1.212583</td>\n",
       "      <td>-0.196897</td>\n",
       "      <td>-0.136133</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.281227</td>\n",
       "      <td>-0.128236</td>\n",
       "      <td>-0.313256</td>\n",
       "      <td>0.688449</td>\n",
       "      <td>0.752403</td>\n",
       "      <td>0.504253</td>\n",
       "      <td>0.169583</td>\n",
       "      <td>0.387176</td>\n",
       "      <td>0.031635</td>\n",
       "      <td>0.222403</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Humor</th>\n",
       "      <td>0.100743</td>\n",
       "      <td>0.084803</td>\n",
       "      <td>-0.271567</td>\n",
       "      <td>-0.353772</td>\n",
       "      <td>-0.069471</td>\n",
       "      <td>-0.454329</td>\n",
       "      <td>-0.414515</td>\n",
       "      <td>-0.260145</td>\n",
       "      <td>1.042515</td>\n",
       "      <td>0.220420</td>\n",
       "      <td>...</td>\n",
       "      <td>1.634733</td>\n",
       "      <td>0.172543</td>\n",
       "      <td>-0.109613</td>\n",
       "      <td>0.135338</td>\n",
       "      <td>0.092286</td>\n",
       "      <td>0.179175</td>\n",
       "      <td>-0.108229</td>\n",
       "      <td>0.037208</td>\n",
       "      <td>-0.349047</td>\n",
       "      <td>-0.274112</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Juvenile</th>\n",
       "      <td>0.149980</td>\n",
       "      <td>0.174567</td>\n",
       "      <td>-0.238282</td>\n",
       "      <td>0.222926</td>\n",
       "      <td>0.308703</td>\n",
       "      <td>-0.002955</td>\n",
       "      <td>0.328506</td>\n",
       "      <td>-0.142979</td>\n",
       "      <td>-0.164752</td>\n",
       "      <td>1.251842</td>\n",
       "      <td>...</td>\n",
       "      <td>0.172543</td>\n",
       "      <td>1.280785</td>\n",
       "      <td>-0.367471</td>\n",
       "      <td>-0.024036</td>\n",
       "      <td>-0.095852</td>\n",
       "      <td>0.308313</td>\n",
       "      <td>0.002014</td>\n",
       "      <td>0.046720</td>\n",
       "      <td>0.189201</td>\n",
       "      <td>0.462887</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Man-woman</th>\n",
       "      <td>-0.464529</td>\n",
       "      <td>0.256679</td>\n",
       "      <td>-0.304188</td>\n",
       "      <td>0.118027</td>\n",
       "      <td>0.519592</td>\n",
       "      <td>-0.255082</td>\n",
       "      <td>-0.374842</td>\n",
       "      <td>-0.184749</td>\n",
       "      <td>0.291022</td>\n",
       "      <td>-0.375056</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.109613</td>\n",
       "      <td>-0.367471</td>\n",
       "      <td>0.880773</td>\n",
       "      <td>-0.153415</td>\n",
       "      <td>-0.239172</td>\n",
       "      <td>-0.077402</td>\n",
       "      <td>-0.364950</td>\n",
       "      <td>-0.149930</td>\n",
       "      <td>-0.458518</td>\n",
       "      <td>-0.189305</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: SF, American</th>\n",
       "      <td>0.744202</td>\n",
       "      <td>-0.150948</td>\n",
       "      <td>-0.043181</td>\n",
       "      <td>0.245135</td>\n",
       "      <td>-0.255644</td>\n",
       "      <td>0.960463</td>\n",
       "      <td>-0.141440</td>\n",
       "      <td>0.923588</td>\n",
       "      <td>0.011838</td>\n",
       "      <td>0.012056</td>\n",
       "      <td>...</td>\n",
       "      <td>0.135338</td>\n",
       "      <td>-0.024036</td>\n",
       "      <td>-0.153415</td>\n",
       "      <td>1.405323</td>\n",
       "      <td>1.489175</td>\n",
       "      <td>0.472463</td>\n",
       "      <td>-0.255961</td>\n",
       "      <td>0.436259</td>\n",
       "      <td>0.297718</td>\n",
       "      <td>0.469184</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: SF, Other</th>\n",
       "      <td>0.875582</td>\n",
       "      <td>-0.260595</td>\n",
       "      <td>-0.089314</td>\n",
       "      <td>0.099948</td>\n",
       "      <td>-0.462879</td>\n",
       "      <td>1.167167</td>\n",
       "      <td>-0.126151</td>\n",
       "      <td>0.939425</td>\n",
       "      <td>-0.012730</td>\n",
       "      <td>-0.012016</td>\n",
       "      <td>...</td>\n",
       "      <td>0.092286</td>\n",
       "      <td>-0.095852</td>\n",
       "      <td>-0.239172</td>\n",
       "      <td>1.489175</td>\n",
       "      <td>1.626317</td>\n",
       "      <td>0.327293</td>\n",
       "      <td>-0.243304</td>\n",
       "      <td>0.516040</td>\n",
       "      <td>0.317457</td>\n",
       "      <td>0.484270</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Short stories, American</th>\n",
       "      <td>0.260021</td>\n",
       "      <td>0.382052</td>\n",
       "      <td>-0.041788</td>\n",
       "      <td>-0.141680</td>\n",
       "      <td>0.292616</td>\n",
       "      <td>-0.067549</td>\n",
       "      <td>-0.131110</td>\n",
       "      <td>0.349977</td>\n",
       "      <td>-0.021625</td>\n",
       "      <td>0.158342</td>\n",
       "      <td>...</td>\n",
       "      <td>0.179175</td>\n",
       "      <td>0.308313</td>\n",
       "      <td>-0.077402</td>\n",
       "      <td>0.472463</td>\n",
       "      <td>0.327293</td>\n",
       "      <td>1.164938</td>\n",
       "      <td>0.224815</td>\n",
       "      <td>0.105440</td>\n",
       "      <td>0.031184</td>\n",
       "      <td>0.463830</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Short stories, Other</th>\n",
       "      <td>-0.372226</td>\n",
       "      <td>-0.252510</td>\n",
       "      <td>0.183456</td>\n",
       "      <td>-0.407849</td>\n",
       "      <td>-0.229332</td>\n",
       "      <td>-0.158386</td>\n",
       "      <td>0.003690</td>\n",
       "      <td>-0.173057</td>\n",
       "      <td>-0.547463</td>\n",
       "      <td>-0.068255</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.108229</td>\n",
       "      <td>0.002014</td>\n",
       "      <td>-0.364950</td>\n",
       "      <td>-0.255961</td>\n",
       "      <td>-0.243304</td>\n",
       "      <td>0.224815</td>\n",
       "      <td>0.948480</td>\n",
       "      <td>-0.650877</td>\n",
       "      <td>-0.013695</td>\n",
       "      <td>-0.180172</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Suspense</th>\n",
       "      <td>0.800998</td>\n",
       "      <td>-0.085074</td>\n",
       "      <td>-0.461443</td>\n",
       "      <td>0.012638</td>\n",
       "      <td>-0.016491</td>\n",
       "      <td>-0.005233</td>\n",
       "      <td>-0.214186</td>\n",
       "      <td>0.479396</td>\n",
       "      <td>0.203187</td>\n",
       "      <td>0.027415</td>\n",
       "      <td>...</td>\n",
       "      <td>0.037208</td>\n",
       "      <td>0.046720</td>\n",
       "      <td>-0.149930</td>\n",
       "      <td>0.436259</td>\n",
       "      <td>0.516040</td>\n",
       "      <td>0.105440</td>\n",
       "      <td>-0.650877</td>\n",
       "      <td>1.487747</td>\n",
       "      <td>0.156375</td>\n",
       "      <td>0.205460</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>War</th>\n",
       "      <td>0.501488</td>\n",
       "      <td>-0.294687</td>\n",
       "      <td>0.430995</td>\n",
       "      <td>-0.020547</td>\n",
       "      <td>-0.314358</td>\n",
       "      <td>0.504644</td>\n",
       "      <td>0.486578</td>\n",
       "      <td>0.192900</td>\n",
       "      <td>-0.361391</td>\n",
       "      <td>0.234068</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.349047</td>\n",
       "      <td>0.189201</td>\n",
       "      <td>-0.458518</td>\n",
       "      <td>0.297718</td>\n",
       "      <td>0.317457</td>\n",
       "      <td>0.031184</td>\n",
       "      <td>-0.013695</td>\n",
       "      <td>0.156375</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0.122271</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Western</th>\n",
       "      <td>0.547864</td>\n",
       "      <td>0.020310</td>\n",
       "      <td>0.220774</td>\n",
       "      <td>0.271194</td>\n",
       "      <td>0.002859</td>\n",
       "      <td>0.488347</td>\n",
       "      <td>0.649634</td>\n",
       "      <td>0.281497</td>\n",
       "      <td>-0.310805</td>\n",
       "      <td>0.362044</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.274112</td>\n",
       "      <td>0.462887</td>\n",
       "      <td>-0.189305</td>\n",
       "      <td>0.469184</td>\n",
       "      <td>0.484270</td>\n",
       "      <td>0.463830</td>\n",
       "      <td>-0.180172</td>\n",
       "      <td>0.205460</td>\n",
       "      <td>0.122271</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>32 rows × 32 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                               Adventure  Bildungsroman  Biographical  \\\n",
       "Adventure                            NaN      -0.072170     -0.012725   \n",
       "Bildungsroman                  -0.072170       0.752103     -0.242454   \n",
       "Biographical                   -0.012725      -0.242454           NaN   \n",
       "Christian                      -0.088186      -0.098786      0.173314   \n",
       "Domestic                       -0.365386       0.581483     -0.327723   \n",
       "Fantasy                         0.483794      -0.265496      0.536520   \n",
       "Historical                      0.219677      -0.268682      0.696117   \n",
       "Horror                          0.541967      -0.002656      0.096480   \n",
       "Humor                           0.034001       0.116057     -0.427395   \n",
       "Juvenile                        0.183723       0.022433     -0.179598   \n",
       "Love                           -0.197751       0.299520      0.013685   \n",
       "Mystery                         0.505942       0.046627     -0.344855   \n",
       "Novel                           0.105420      -0.126437      0.130448   \n",
       "Political                       0.153344      -0.274706     -0.048713   \n",
       "Psychological                  -0.029471       0.437425     -0.406507   \n",
       "SF                              0.820735      -0.255388     -0.186762   \n",
       "Short stories                   0.154007       0.140222      0.176666   \n",
       "Subj: Detective                 0.447406       0.002468     -0.219737   \n",
       "Subj: Fairy tales              -0.167399      -0.137918      0.092702   \n",
       "Subj: Fantasy                   0.520758      -0.086648      0.265348   \n",
       "Subj: History                   0.404821      -0.521361      0.535378   \n",
       "Subj: Horror                    0.422324      -0.018651     -0.124237   \n",
       "Subj: Humor                     0.100743       0.084803     -0.271567   \n",
       "Subj: Juvenile                  0.149980       0.174567     -0.238282   \n",
       "Subj: Man-woman                -0.464529       0.256679     -0.304188   \n",
       "Subj: SF, American              0.744202      -0.150948     -0.043181   \n",
       "Subj: SF, Other                 0.875582      -0.260595     -0.089314   \n",
       "Subj: Short stories, American   0.260021       0.382052     -0.041788   \n",
       "Subj: Short stories, Other     -0.372226      -0.252510      0.183456   \n",
       "Suspense                        0.800998      -0.085074     -0.461443   \n",
       "War                             0.501488      -0.294687      0.430995   \n",
       "Western                         0.547864       0.020310      0.220774   \n",
       "\n",
       "                               Christian  Domestic   Fantasy  Historical  \\\n",
       "Adventure                      -0.088186 -0.365386  0.483794    0.219677   \n",
       "Bildungsroman                  -0.098786  0.581483 -0.265496   -0.268682   \n",
       "Biographical                    0.173314 -0.327723  0.536520    0.696117   \n",
       "Christian                            NaN  0.021791  0.362902    0.276808   \n",
       "Domestic                        0.021791  0.943536 -0.467619   -0.171254   \n",
       "Fantasy                         0.362902 -0.467619  1.335442    0.549064   \n",
       "Historical                      0.276808 -0.171254  0.549064    0.902016   \n",
       "Horror                          0.021624 -0.184249  0.687013   -0.025590   \n",
       "Humor                          -0.101902  0.217702 -0.312604   -0.510945   \n",
       "Juvenile                        0.357926  0.185440  0.034995    0.344883   \n",
       "Love                            0.355099  0.482635  0.062556   -0.098608   \n",
       "Mystery                        -0.054455  0.086565 -0.162077   -0.201735   \n",
       "Novel                           0.102202 -0.120390  0.132852    0.064322   \n",
       "Political                      -0.056673 -0.252530  0.066620   -0.058898   \n",
       "Psychological                  -0.090570  0.536463 -0.235468   -0.353435   \n",
       "SF                              0.157253 -0.410694  0.893922   -0.133666   \n",
       "Short stories                  -0.324154 -0.094060  0.084145   -0.004279   \n",
       "Subj: Detective                -0.223415 -0.035958 -0.132834   -0.075409   \n",
       "Subj: Fairy tales               0.025744 -0.215797  0.602875    0.190644   \n",
       "Subj: Fantasy                   0.112579 -0.245219  0.993454    0.190278   \n",
       "Subj: History                   0.116843 -0.449350  0.346020    0.759888   \n",
       "Subj: Horror                   -0.012323 -0.162895  0.639925   -0.044933   \n",
       "Subj: Humor                    -0.353772 -0.069471 -0.454329   -0.414515   \n",
       "Subj: Juvenile                  0.222926  0.308703 -0.002955    0.328506   \n",
       "Subj: Man-woman                 0.118027  0.519592 -0.255082   -0.374842   \n",
       "Subj: SF, American              0.245135 -0.255644  0.960463   -0.141440   \n",
       "Subj: SF, Other                 0.099948 -0.462879  1.167167   -0.126151   \n",
       "Subj: Short stories, American  -0.141680  0.292616 -0.067549   -0.131110   \n",
       "Subj: Short stories, Other     -0.407849 -0.229332 -0.158386    0.003690   \n",
       "Suspense                        0.012638 -0.016491 -0.005233   -0.214186   \n",
       "War                            -0.020547 -0.314358  0.504644    0.486578   \n",
       "Western                         0.271194  0.002859  0.488347    0.649634   \n",
       "\n",
       "                                 Horror     Humor  Juvenile    ...     \\\n",
       "Adventure                      0.541967  0.034001  0.183723    ...      \n",
       "Bildungsroman                 -0.002656  0.116057  0.022433    ...      \n",
       "Biographical                   0.096480 -0.427395 -0.179598    ...      \n",
       "Christian                      0.021624 -0.101902  0.357926    ...      \n",
       "Domestic                      -0.184249  0.217702  0.185440    ...      \n",
       "Fantasy                        0.687013 -0.312604  0.034995    ...      \n",
       "Historical                    -0.025590 -0.510945  0.344883    ...      \n",
       "Horror                              NaN -0.087847 -0.117164    ...      \n",
       "Humor                         -0.087847  1.138995 -0.091322    ...      \n",
       "Juvenile                      -0.117164 -0.091322  1.040070    ...      \n",
       "Love                           0.092822  0.150789 -0.186289    ...      \n",
       "Mystery                        0.300864  0.359944 -0.021264    ...      \n",
       "Novel                          0.416615  0.014659  0.043407    ...      \n",
       "Political                      0.078068  0.327187 -0.487879    ...      \n",
       "Psychological                  0.232545  0.280279 -0.211551    ...      \n",
       "SF                             0.680758  0.121817  0.007637    ...      \n",
       "Short stories                  0.242251 -0.330409  0.083586    ...      \n",
       "Subj: Detective                0.421240  0.339656 -0.152532    ...      \n",
       "Subj: Fairy tales              0.203460 -0.484346  0.651522    ...      \n",
       "Subj: Fantasy                  1.016912 -0.072096  0.245849    ...      \n",
       "Subj: History                 -0.011309 -0.539294  0.417826    ...      \n",
       "Subj: Horror                   1.212583 -0.196897 -0.136133    ...      \n",
       "Subj: Humor                   -0.260145  1.042515  0.220420    ...      \n",
       "Subj: Juvenile                -0.142979 -0.164752  1.251842    ...      \n",
       "Subj: Man-woman               -0.184749  0.291022 -0.375056    ...      \n",
       "Subj: SF, American             0.923588  0.011838  0.012056    ...      \n",
       "Subj: SF, Other                0.939425 -0.012730 -0.012016    ...      \n",
       "Subj: Short stories, American  0.349977 -0.021625  0.158342    ...      \n",
       "Subj: Short stories, Other    -0.173057 -0.547463 -0.068255    ...      \n",
       "Suspense                       0.479396  0.203187  0.027415    ...      \n",
       "War                            0.192900 -0.361391  0.234068    ...      \n",
       "Western                        0.281497 -0.310805  0.362044    ...      \n",
       "\n",
       "                               Subj: Humor  Subj: Juvenile  Subj: Man-woman  \\\n",
       "Adventure                         0.100743        0.149980        -0.464529   \n",
       "Bildungsroman                     0.084803        0.174567         0.256679   \n",
       "Biographical                     -0.271567       -0.238282        -0.304188   \n",
       "Christian                        -0.353772        0.222926         0.118027   \n",
       "Domestic                         -0.069471        0.308703         0.519592   \n",
       "Fantasy                          -0.454329       -0.002955        -0.255082   \n",
       "Historical                       -0.414515        0.328506        -0.374842   \n",
       "Horror                           -0.260145       -0.142979        -0.184749   \n",
       "Humor                             1.042515       -0.164752         0.291022   \n",
       "Juvenile                          0.220420        1.251842        -0.375056   \n",
       "Love                             -0.371044       -0.076187         0.702951   \n",
       "Mystery                           0.261903       -0.082738         0.000384   \n",
       "Novel                            -0.141713       -0.048442        -0.183073   \n",
       "Political                         0.255315       -0.612336        -0.006155   \n",
       "Psychological                     0.012057       -0.132851         0.414421   \n",
       "SF                                0.018398       -0.103849        -0.092852   \n",
       "Short stories                    -0.037700        0.239126        -0.314901   \n",
       "Subj: Detective                   0.209985       -0.104154        -0.279632   \n",
       "Subj: Fairy tales                 0.072939        0.682911        -0.416140   \n",
       "Subj: Fantasy                     0.028712        0.242583        -0.216332   \n",
       "Subj: History                    -0.227996        0.277672        -0.587783   \n",
       "Subj: Horror                     -0.281227       -0.128236        -0.313256   \n",
       "Subj: Humor                       1.634733        0.172543        -0.109613   \n",
       "Subj: Juvenile                    0.172543        1.280785        -0.367471   \n",
       "Subj: Man-woman                  -0.109613       -0.367471         0.880773   \n",
       "Subj: SF, American                0.135338       -0.024036        -0.153415   \n",
       "Subj: SF, Other                   0.092286       -0.095852        -0.239172   \n",
       "Subj: Short stories, American     0.179175        0.308313        -0.077402   \n",
       "Subj: Short stories, Other       -0.108229        0.002014        -0.364950   \n",
       "Suspense                          0.037208        0.046720        -0.149930   \n",
       "War                              -0.349047        0.189201        -0.458518   \n",
       "Western                          -0.274112        0.462887        -0.189305   \n",
       "\n",
       "                               Subj: SF, American  Subj: SF, Other  \\\n",
       "Adventure                                0.744202         0.875582   \n",
       "Bildungsroman                           -0.150948        -0.260595   \n",
       "Biographical                            -0.043181        -0.089314   \n",
       "Christian                                0.245135         0.099948   \n",
       "Domestic                                -0.255644        -0.462879   \n",
       "Fantasy                                  0.960463         1.167167   \n",
       "Historical                              -0.141440        -0.126151   \n",
       "Horror                                   0.923588         0.939425   \n",
       "Humor                                    0.011838        -0.012730   \n",
       "Juvenile                                 0.012056        -0.012016   \n",
       "Love                                     0.035332        -0.109698   \n",
       "Mystery                                  0.061832         0.150294   \n",
       "Novel                                    0.258302         0.268316   \n",
       "Political                                0.354827         0.424520   \n",
       "Psychological                            0.125372         0.058868   \n",
       "SF                                       1.182643         1.453486   \n",
       "Short stories                            0.297618         0.133140   \n",
       "Subj: Detective                          0.144686         0.171874   \n",
       "Subj: Fairy tales                       -0.012294         0.062075   \n",
       "Subj: Fantasy                            1.015745         0.889719   \n",
       "Subj: History                           -0.005793         0.066833   \n",
       "Subj: Horror                             0.688449         0.752403   \n",
       "Subj: Humor                              0.135338         0.092286   \n",
       "Subj: Juvenile                          -0.024036        -0.095852   \n",
       "Subj: Man-woman                         -0.153415        -0.239172   \n",
       "Subj: SF, American                       1.405323         1.489175   \n",
       "Subj: SF, Other                          1.489175         1.626317   \n",
       "Subj: Short stories, American            0.472463         0.327293   \n",
       "Subj: Short stories, Other              -0.255961        -0.243304   \n",
       "Suspense                                 0.436259         0.516040   \n",
       "War                                      0.297718         0.317457   \n",
       "Western                                  0.469184         0.484270   \n",
       "\n",
       "                               Subj: Short stories, American  \\\n",
       "Adventure                                           0.260021   \n",
       "Bildungsroman                                       0.382052   \n",
       "Biographical                                       -0.041788   \n",
       "Christian                                          -0.141680   \n",
       "Domestic                                            0.292616   \n",
       "Fantasy                                            -0.067549   \n",
       "Historical                                         -0.131110   \n",
       "Horror                                              0.349977   \n",
       "Humor                                              -0.021625   \n",
       "Juvenile                                            0.158342   \n",
       "Love                                                0.011472   \n",
       "Mystery                                             0.035091   \n",
       "Novel                                              -0.058580   \n",
       "Political                                          -0.188444   \n",
       "Psychological                                       0.192172   \n",
       "SF                                                  0.043937   \n",
       "Short stories                                       0.726931   \n",
       "Subj: Detective                                     0.126269   \n",
       "Subj: Fairy tales                                   0.226002   \n",
       "Subj: Fantasy                                       0.431507   \n",
       "Subj: History                                      -0.085285   \n",
       "Subj: Horror                                        0.504253   \n",
       "Subj: Humor                                         0.179175   \n",
       "Subj: Juvenile                                      0.308313   \n",
       "Subj: Man-woman                                    -0.077402   \n",
       "Subj: SF, American                                  0.472463   \n",
       "Subj: SF, Other                                     0.327293   \n",
       "Subj: Short stories, American                       1.164938   \n",
       "Subj: Short stories, Other                          0.224815   \n",
       "Suspense                                            0.105440   \n",
       "War                                                 0.031184   \n",
       "Western                                             0.463830   \n",
       "\n",
       "                               Subj: Short stories, Other  Suspense       War  \\\n",
       "Adventure                                       -0.372226  0.800998  0.501488   \n",
       "Bildungsroman                                   -0.252510 -0.085074 -0.294687   \n",
       "Biographical                                     0.183456 -0.461443  0.430995   \n",
       "Christian                                       -0.407849  0.012638 -0.020547   \n",
       "Domestic                                        -0.229332 -0.016491 -0.314358   \n",
       "Fantasy                                         -0.158386 -0.005233  0.504644   \n",
       "Historical                                       0.003690 -0.214186  0.486578   \n",
       "Horror                                          -0.173057  0.479396  0.192900   \n",
       "Humor                                           -0.547463  0.203187 -0.361391   \n",
       "Juvenile                                        -0.068255  0.027415  0.234068   \n",
       "Love                                            -0.508129 -0.062171 -0.198239   \n",
       "Mystery                                         -0.750404  1.112460 -0.220826   \n",
       "Novel                                           -0.277479  0.100347  0.181652   \n",
       "Political                                       -0.505973  0.512900  0.182516   \n",
       "Psychological                                   -0.358002  0.192025 -0.253957   \n",
       "SF                                              -0.501464  0.751688  0.442724   \n",
       "Short stories                                    0.556748 -0.221869  0.091763   \n",
       "Subj: Detective                                 -0.476567  1.058940 -0.182358   \n",
       "Subj: Fairy tales                                0.674164 -0.367265 -0.263040   \n",
       "Subj: Fantasy                                   -0.027357  0.133938  0.143134   \n",
       "Subj: History                                    0.115093 -0.033958  0.723462   \n",
       "Subj: Horror                                     0.169583  0.387176  0.031635   \n",
       "Subj: Humor                                     -0.108229  0.037208 -0.349047   \n",
       "Subj: Juvenile                                   0.002014  0.046720  0.189201   \n",
       "Subj: Man-woman                                 -0.364950 -0.149930 -0.458518   \n",
       "Subj: SF, American                              -0.255961  0.436259  0.297718   \n",
       "Subj: SF, Other                                 -0.243304  0.516040  0.317457   \n",
       "Subj: Short stories, American                    0.224815  0.105440  0.031184   \n",
       "Subj: Short stories, Other                       0.948480 -0.650877 -0.013695   \n",
       "Suspense                                        -0.650877  1.487747  0.156375   \n",
       "War                                             -0.013695  0.156375       NaN   \n",
       "Western                                         -0.180172  0.205460  0.122271   \n",
       "\n",
       "                                Western  \n",
       "Adventure                      0.547864  \n",
       "Bildungsroman                  0.020310  \n",
       "Biographical                   0.220774  \n",
       "Christian                      0.271194  \n",
       "Domestic                       0.002859  \n",
       "Fantasy                        0.488347  \n",
       "Historical                     0.649634  \n",
       "Horror                         0.281497  \n",
       "Humor                         -0.310805  \n",
       "Juvenile                       0.362044  \n",
       "Love                           0.102968  \n",
       "Mystery                        0.112403  \n",
       "Novel                          0.240374  \n",
       "Political                     -0.226593  \n",
       "Psychological                 -0.086895  \n",
       "SF                             0.279680  \n",
       "Short stories                  0.308416  \n",
       "Subj: Detective                0.158981  \n",
       "Subj: Fairy tales              0.077240  \n",
       "Subj: Fantasy                  0.512499  \n",
       "Subj: History                  0.340683  \n",
       "Subj: Horror                   0.222403  \n",
       "Subj: Humor                   -0.274112  \n",
       "Subj: Juvenile                 0.462887  \n",
       "Subj: Man-woman               -0.189305  \n",
       "Subj: SF, American             0.469184  \n",
       "Subj: SF, Other                0.484270  \n",
       "Subj: Short stories, American  0.463830  \n",
       "Subj: Short stories, Other    -0.180172  \n",
       "Suspense                       0.205460  \n",
       "War                            0.122271  \n",
       "Western                             NaN  \n",
       "\n",
       "[32 rows x 32 columns]"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sansmatrix = pd.DataFrame(sansoverlap)\n",
    "sansmatrix"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Compare model correlations to social proximity\n",
    "\n",
    "In [```../select_data/build_genre_dataset.ipynb```](https://github.com/tedunderwood/genredistance/blob/master/select_data/build_genre_dataset.ipynb) we calculated pointwise mutual information for genre labels in Hathi. Let's read that back in, so we can compare it."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "social = pd.read_csv('../socialmeasures/pmidf.csv', index_col = 'index')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "We're going to be calculating the correlation between data frames that may sometimes have NaN's.\n",
    "\n",
    "This will be easiest if we write a function to compare two matrices and export matching cells as a pair of equal-length vectors."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Using the diagonal: \n",
      "(0.45252114703459534, 2.0742695439313944e-26) n = 496\n"
     ]
    }
   ],
   "source": [
    "def compare_to_social(socialdf, otherdf):\n",
    "    ''' Compares two DataFrames, ignoring cells as instructed,\n",
    "    and exporting the results in two vectors for correlation.\n",
    "    '''\n",
    "\n",
    "    socialvals = []\n",
    "    othervals = []\n",
    "    comparisons = []\n",
    "    \n",
    "    indexlist = socialdf.index.tolist()\n",
    "\n",
    "    for seq, idx1 in enumerate(indexlist):\n",
    "        for idx2 in indexlist[seq + 1: ]:\n",
    "            if idx1 not in otherdf.index or idx2 not in otherdf.index:\n",
    "                continue\n",
    "                \n",
    "            otherval = otherdf.loc[idx1, idx2]\n",
    "            if pd.isnull(otherval):\n",
    "                continue\n",
    "            else:\n",
    "                sval = socialdf.loc[idx1, idx2]\n",
    "                socialvals.append(sval)\n",
    "                othervals.append(otherval)\n",
    "                comparisons.append((idx1, idx2))\n",
    "                \n",
    "    return socialvals, othervals, comparisons\n",
    "\n",
    "socialvals, predictvals, comparisons = compare_to_social(social, sansmatrix)\n",
    "print('Using the diagonal: ')\n",
    "print(pearsonr(socialvals, predictvals), 'n = ' + str(len(predictvals)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "That's a solid correlation. What does it look like?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1221c07f0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(predictvals, socialvals)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "with open('../results/social2predictvals.tsv', mode = 'w', encoding = 'utf-8') as f:\n",
    "    f.write('genre1\\tgenre2\\tsocialprox\\tpredict\\n')\n",
    "    for idx, comp in enumerate(comparisons):\n",
    "        g1, g2 = comp\n",
    "        soc = socialvals[idx]\n",
    "        pred = predictvals[idx]\n",
    "        f.write(g1 + '\\t' + g2 + '\\t' + str(soc) + '\\t' + str(pred) + '\\n')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### Calculate confidence interval on *r*"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(0.45252114703459534,\n",
       " 2.0742695439313944e-26,\n",
       " 0.37960132021109044,\n",
       " 0.5198531082142609)"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "## Careful reading about confidence intervals has led me to conclude that bootstrapped\n",
    "## results are not always reliable in this case. \n",
    "\n",
    "## I am relying instead on a function written by Zhiya Zuo, in this post:\n",
    "## https://zhiyzuo.github.io/Pearson-Correlation-CI-in-Python/\n",
    "\n",
    "# It matches results from cor.test in R.\n",
    "\n",
    "from scipy import stats\n",
    "\n",
    "def pearsonr_ci(x,y,alpha=0.05):\n",
    "    ''' calculate Pearson correlation along with the confidence interval using scipy and numpy\n",
    "    Parameters\n",
    "    ----------\n",
    "    x, y : iterable object such as a list or np.array\n",
    "      Input for correlation calculation\n",
    "    alpha : float\n",
    "      Significance level. 0.05 by default\n",
    "    Returns\n",
    "    -------\n",
    "    r : float\n",
    "      Pearson's correlation coefficient\n",
    "    pval : float\n",
    "      The corresponding p value\n",
    "    lo, hi : float\n",
    "      The lower and upper bound of confidence intervals\n",
    "    '''\n",
    "\n",
    "    r, p = stats.pearsonr(x,y)\n",
    "    r_z = np.arctanh(r)\n",
    "    se = 1/np.sqrt(x.size-3)\n",
    "    z = stats.norm.ppf(1-alpha/2)\n",
    "    lo_z, hi_z = r_z-z*se, r_z+z*se\n",
    "    lo, hi = np.tanh((lo_z, hi_z))\n",
    "    return r, p, lo, hi\n",
    "\n",
    "pearsonr_ci(np.array(predictvals), np.array(socialvals))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### What if we allow overlap (genre intersection)?\n",
    "\n",
    "This was a separate predictive run, saved as ```overlapcrosscomparisons.tsv.```"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [],
   "source": [
    "odict = dict()\n",
    "for filepath in ['../results/overlapcrosscomparisons.tsv']:\n",
    "    crosses = pd.read_csv(filepath, sep = '\\t')\n",
    "    for idx, row in crosses.iterrows():\n",
    "        if row.testype.startswith('self'):\n",
    "            continue\n",
    "        g1 = row.name1.split('_')[0]\n",
    "        g2 = row.name2.split('_')[0]\n",
    "\n",
    "        if g1.startswith('random') or g2.startswith('random'):\n",
    "            continue\n",
    "\n",
    "        if g1 not in odict:\n",
    "            odict[g1] = dict()\n",
    "\n",
    "        if g2 not in odict:\n",
    "            odict[g2] = dict()\n",
    "\n",
    "        if g2 not in odict[g1]:\n",
    "            odict[g1][g2] = [float(row.spearman)]\n",
    "        else:\n",
    "            odict[g1][g2].append(float(row.spearman))\n",
    "\n",
    "        if g1 not in odict[g2]:\n",
    "            odict[g2][g1] = [float(row.spearman)]\n",
    "        else:\n",
    "            odict[g2][g1].append(float(row.spearman))\n",
    "\n",
    "avgwoverlap = dict()\n",
    "for k1, v1 in odict.items():\n",
    "    avgwoverlap[k1] = dict()\n",
    "    for k2, v2 in v1.items():\n",
    "        avgwoverlap[k1][k2] = sum(v2) / len(v2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [],
   "source": [
    "withoverlap = dict()\n",
    "\n",
    "for g1 in primaries:\n",
    "    if g1.startswith('random'):\n",
    "        continue\n",
    "\n",
    "    withoverlap[g1] = dict()\n",
    "    \n",
    "    for g2 in primaries:\n",
    "        if g2.startswith('random'):\n",
    "            continue\n",
    "            \n",
    "        if g1 == g2:\n",
    "            bversion = g1 + ' B'\n",
    "            if bversion in bgenres:\n",
    "                withkey1 = compress(g1)\n",
    "                withkey2 = compress(bversion)\n",
    "            else:\n",
    "                withoverlap[g1][g1] = float('nan')\n",
    "                continue  \n",
    "                \n",
    "        else:\n",
    "            withkey1 = compress(g1)\n",
    "            withkey2 = compress(g2)\n",
    "\n",
    "        if withkey1 in avgwoverlap and withkey2 in avgwoverlap[withkey1]:\n",
    "            withoverlap[g1][g2] = avgwoverlap[withkey1][withkey2]\n",
    "        else:\n",
    "            withoverlap[g1][g2] = float('nan')\n",
    "            print('error', g1, g2, withkey1, withkey2)\n",
    "        \n",
    "        \n",
    "        "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Adventure</th>\n",
       "      <th>Bildungsroman</th>\n",
       "      <th>Biographical</th>\n",
       "      <th>Christian</th>\n",
       "      <th>Domestic</th>\n",
       "      <th>Fantasy</th>\n",
       "      <th>Historical</th>\n",
       "      <th>Horror</th>\n",
       "      <th>Humor</th>\n",
       "      <th>Juvenile</th>\n",
       "      <th>...</th>\n",
       "      <th>Subj: Humor</th>\n",
       "      <th>Subj: Juvenile</th>\n",
       "      <th>Subj: Man-woman</th>\n",
       "      <th>Subj: SF, American</th>\n",
       "      <th>Subj: SF, Other</th>\n",
       "      <th>Subj: Short stories, American</th>\n",
       "      <th>Subj: Short stories, Other</th>\n",
       "      <th>Suspense</th>\n",
       "      <th>War</th>\n",
       "      <th>Western</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Adventure</th>\n",
       "      <td>NaN</td>\n",
       "      <td>-0.089374</td>\n",
       "      <td>0.062906</td>\n",
       "      <td>-0.088186</td>\n",
       "      <td>-0.360672</td>\n",
       "      <td>0.445826</td>\n",
       "      <td>0.113316</td>\n",
       "      <td>0.541967</td>\n",
       "      <td>0.034001</td>\n",
       "      <td>0.183723</td>\n",
       "      <td>...</td>\n",
       "      <td>0.100743</td>\n",
       "      <td>0.149980</td>\n",
       "      <td>-0.433253</td>\n",
       "      <td>0.744202</td>\n",
       "      <td>0.875582</td>\n",
       "      <td>0.260021</td>\n",
       "      <td>-0.372226</td>\n",
       "      <td>0.800998</td>\n",
       "      <td>0.596862</td>\n",
       "      <td>0.661921</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Bildungsroman</th>\n",
       "      <td>-0.089374</td>\n",
       "      <td>0.752103</td>\n",
       "      <td>-0.242454</td>\n",
       "      <td>-0.098786</td>\n",
       "      <td>0.573723</td>\n",
       "      <td>-0.265496</td>\n",
       "      <td>-0.268682</td>\n",
       "      <td>-0.002656</td>\n",
       "      <td>0.255883</td>\n",
       "      <td>0.022433</td>\n",
       "      <td>...</td>\n",
       "      <td>0.084803</td>\n",
       "      <td>0.174567</td>\n",
       "      <td>0.320883</td>\n",
       "      <td>-0.150948</td>\n",
       "      <td>-0.260595</td>\n",
       "      <td>0.382052</td>\n",
       "      <td>-0.252510</td>\n",
       "      <td>-0.031086</td>\n",
       "      <td>-0.271868</td>\n",
       "      <td>0.020310</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Biographical</th>\n",
       "      <td>0.062906</td>\n",
       "      <td>-0.242454</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0.025658</td>\n",
       "      <td>-0.327723</td>\n",
       "      <td>0.536520</td>\n",
       "      <td>0.694278</td>\n",
       "      <td>0.096480</td>\n",
       "      <td>-0.427395</td>\n",
       "      <td>-0.179598</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.271567</td>\n",
       "      <td>-0.238282</td>\n",
       "      <td>-0.304188</td>\n",
       "      <td>-0.043181</td>\n",
       "      <td>-0.089314</td>\n",
       "      <td>-0.041788</td>\n",
       "      <td>0.183456</td>\n",
       "      <td>-0.461443</td>\n",
       "      <td>0.394171</td>\n",
       "      <td>0.330647</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Christian</th>\n",
       "      <td>-0.088186</td>\n",
       "      <td>-0.098786</td>\n",
       "      <td>0.025658</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0.270747</td>\n",
       "      <td>0.288671</td>\n",
       "      <td>0.276808</td>\n",
       "      <td>0.021624</td>\n",
       "      <td>-0.008394</td>\n",
       "      <td>0.357926</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.353772</td>\n",
       "      <td>0.222926</td>\n",
       "      <td>0.118027</td>\n",
       "      <td>0.245135</td>\n",
       "      <td>0.099948</td>\n",
       "      <td>-0.141680</td>\n",
       "      <td>-0.407849</td>\n",
       "      <td>0.012638</td>\n",
       "      <td>-0.020547</td>\n",
       "      <td>0.271194</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Domestic</th>\n",
       "      <td>-0.360672</td>\n",
       "      <td>0.573723</td>\n",
       "      <td>-0.327723</td>\n",
       "      <td>0.270747</td>\n",
       "      <td>0.943536</td>\n",
       "      <td>-0.467619</td>\n",
       "      <td>-0.171254</td>\n",
       "      <td>-0.184249</td>\n",
       "      <td>0.217702</td>\n",
       "      <td>0.185440</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.069471</td>\n",
       "      <td>0.308703</td>\n",
       "      <td>0.527450</td>\n",
       "      <td>-0.255644</td>\n",
       "      <td>-0.462879</td>\n",
       "      <td>0.292616</td>\n",
       "      <td>-0.229332</td>\n",
       "      <td>-0.016491</td>\n",
       "      <td>-0.332612</td>\n",
       "      <td>0.002859</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Fantasy</th>\n",
       "      <td>0.445826</td>\n",
       "      <td>-0.265496</td>\n",
       "      <td>0.536520</td>\n",
       "      <td>0.288671</td>\n",
       "      <td>-0.467619</td>\n",
       "      <td>1.335442</td>\n",
       "      <td>0.549064</td>\n",
       "      <td>0.752502</td>\n",
       "      <td>-0.312604</td>\n",
       "      <td>0.034995</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.454329</td>\n",
       "      <td>-0.002955</td>\n",
       "      <td>-0.255082</td>\n",
       "      <td>0.960463</td>\n",
       "      <td>1.167167</td>\n",
       "      <td>-0.067549</td>\n",
       "      <td>-0.158386</td>\n",
       "      <td>-0.005233</td>\n",
       "      <td>0.460792</td>\n",
       "      <td>0.488347</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Historical</th>\n",
       "      <td>0.113316</td>\n",
       "      <td>-0.268682</td>\n",
       "      <td>0.694278</td>\n",
       "      <td>0.276808</td>\n",
       "      <td>-0.171254</td>\n",
       "      <td>0.549064</td>\n",
       "      <td>0.902016</td>\n",
       "      <td>-0.025590</td>\n",
       "      <td>-0.510945</td>\n",
       "      <td>0.344883</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.414515</td>\n",
       "      <td>0.328506</td>\n",
       "      <td>-0.367657</td>\n",
       "      <td>-0.141440</td>\n",
       "      <td>-0.126151</td>\n",
       "      <td>-0.131110</td>\n",
       "      <td>0.003690</td>\n",
       "      <td>-0.214186</td>\n",
       "      <td>0.459537</td>\n",
       "      <td>0.649634</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Horror</th>\n",
       "      <td>0.541967</td>\n",
       "      <td>-0.002656</td>\n",
       "      <td>0.096480</td>\n",
       "      <td>0.021624</td>\n",
       "      <td>-0.184249</td>\n",
       "      <td>0.752502</td>\n",
       "      <td>-0.025590</td>\n",
       "      <td>NaN</td>\n",
       "      <td>-0.087847</td>\n",
       "      <td>-0.117164</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.260145</td>\n",
       "      <td>-0.142979</td>\n",
       "      <td>-0.184749</td>\n",
       "      <td>0.832844</td>\n",
       "      <td>0.934778</td>\n",
       "      <td>0.349977</td>\n",
       "      <td>-0.173057</td>\n",
       "      <td>0.479396</td>\n",
       "      <td>0.192900</td>\n",
       "      <td>0.378327</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Humor</th>\n",
       "      <td>0.034001</td>\n",
       "      <td>0.255883</td>\n",
       "      <td>-0.427395</td>\n",
       "      <td>-0.008394</td>\n",
       "      <td>0.217702</td>\n",
       "      <td>-0.312604</td>\n",
       "      <td>-0.510945</td>\n",
       "      <td>-0.087847</td>\n",
       "      <td>1.138995</td>\n",
       "      <td>-0.091322</td>\n",
       "      <td>...</td>\n",
       "      <td>1.042515</td>\n",
       "      <td>-0.164752</td>\n",
       "      <td>0.291022</td>\n",
       "      <td>0.011838</td>\n",
       "      <td>-0.012730</td>\n",
       "      <td>-0.021625</td>\n",
       "      <td>-0.547463</td>\n",
       "      <td>0.203187</td>\n",
       "      <td>-0.361391</td>\n",
       "      <td>-0.310805</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Juvenile</th>\n",
       "      <td>0.183723</td>\n",
       "      <td>0.022433</td>\n",
       "      <td>-0.179598</td>\n",
       "      <td>0.357926</td>\n",
       "      <td>0.185440</td>\n",
       "      <td>0.034995</td>\n",
       "      <td>0.344883</td>\n",
       "      <td>-0.117164</td>\n",
       "      <td>-0.091322</td>\n",
       "      <td>1.040070</td>\n",
       "      <td>...</td>\n",
       "      <td>0.220420</td>\n",
       "      <td>1.325600</td>\n",
       "      <td>-0.375056</td>\n",
       "      <td>0.012056</td>\n",
       "      <td>-0.012016</td>\n",
       "      <td>0.158342</td>\n",
       "      <td>-0.068255</td>\n",
       "      <td>0.027415</td>\n",
       "      <td>0.234068</td>\n",
       "      <td>0.362044</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Love</th>\n",
       "      <td>-0.197751</td>\n",
       "      <td>0.266773</td>\n",
       "      <td>0.013685</td>\n",
       "      <td>0.355099</td>\n",
       "      <td>0.535108</td>\n",
       "      <td>0.062556</td>\n",
       "      <td>-0.043058</td>\n",
       "      <td>0.121752</td>\n",
       "      <td>0.150789</td>\n",
       "      <td>-0.186289</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.371044</td>\n",
       "      <td>-0.076187</td>\n",
       "      <td>0.686181</td>\n",
       "      <td>0.035332</td>\n",
       "      <td>-0.109698</td>\n",
       "      <td>0.011472</td>\n",
       "      <td>-0.508129</td>\n",
       "      <td>-0.062171</td>\n",
       "      <td>-0.195371</td>\n",
       "      <td>0.240213</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Mystery</th>\n",
       "      <td>0.505942</td>\n",
       "      <td>0.046627</td>\n",
       "      <td>-0.344855</td>\n",
       "      <td>-0.054455</td>\n",
       "      <td>0.086565</td>\n",
       "      <td>-0.162077</td>\n",
       "      <td>-0.201735</td>\n",
       "      <td>0.412305</td>\n",
       "      <td>0.401879</td>\n",
       "      <td>-0.021264</td>\n",
       "      <td>...</td>\n",
       "      <td>0.261903</td>\n",
       "      <td>-0.082738</td>\n",
       "      <td>0.000384</td>\n",
       "      <td>0.061832</td>\n",
       "      <td>0.150294</td>\n",
       "      <td>0.035091</td>\n",
       "      <td>-0.750404</td>\n",
       "      <td>1.112460</td>\n",
       "      <td>-0.220826</td>\n",
       "      <td>0.112403</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Novel</th>\n",
       "      <td>0.283046</td>\n",
       "      <td>-0.065308</td>\n",
       "      <td>0.130448</td>\n",
       "      <td>0.102202</td>\n",
       "      <td>-0.135913</td>\n",
       "      <td>0.311148</td>\n",
       "      <td>0.085618</td>\n",
       "      <td>0.416615</td>\n",
       "      <td>0.045923</td>\n",
       "      <td>0.043407</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.141713</td>\n",
       "      <td>-0.048442</td>\n",
       "      <td>-0.108155</td>\n",
       "      <td>0.258302</td>\n",
       "      <td>0.268316</td>\n",
       "      <td>-0.058580</td>\n",
       "      <td>-0.277479</td>\n",
       "      <td>0.251891</td>\n",
       "      <td>0.181652</td>\n",
       "      <td>0.240374</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Political</th>\n",
       "      <td>0.382244</td>\n",
       "      <td>-0.239640</td>\n",
       "      <td>-0.048713</td>\n",
       "      <td>-0.056673</td>\n",
       "      <td>-0.252530</td>\n",
       "      <td>0.066620</td>\n",
       "      <td>-0.147333</td>\n",
       "      <td>0.078068</td>\n",
       "      <td>0.392127</td>\n",
       "      <td>-0.487879</td>\n",
       "      <td>...</td>\n",
       "      <td>0.255315</td>\n",
       "      <td>-0.612336</td>\n",
       "      <td>-0.070625</td>\n",
       "      <td>0.354827</td>\n",
       "      <td>0.424520</td>\n",
       "      <td>-0.188444</td>\n",
       "      <td>-0.505973</td>\n",
       "      <td>0.604561</td>\n",
       "      <td>0.182516</td>\n",
       "      <td>-0.226593</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Psychological</th>\n",
       "      <td>0.000161</td>\n",
       "      <td>0.437425</td>\n",
       "      <td>-0.406507</td>\n",
       "      <td>0.062063</td>\n",
       "      <td>0.525638</td>\n",
       "      <td>-0.122866</td>\n",
       "      <td>-0.353435</td>\n",
       "      <td>0.146774</td>\n",
       "      <td>0.368046</td>\n",
       "      <td>-0.211551</td>\n",
       "      <td>...</td>\n",
       "      <td>0.012057</td>\n",
       "      <td>-0.132851</td>\n",
       "      <td>0.414421</td>\n",
       "      <td>0.125372</td>\n",
       "      <td>0.058868</td>\n",
       "      <td>0.192172</td>\n",
       "      <td>-0.358002</td>\n",
       "      <td>0.192025</td>\n",
       "      <td>-0.253957</td>\n",
       "      <td>-0.086895</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SF</th>\n",
       "      <td>0.820735</td>\n",
       "      <td>-0.255388</td>\n",
       "      <td>-0.186762</td>\n",
       "      <td>0.121891</td>\n",
       "      <td>-0.410694</td>\n",
       "      <td>0.853542</td>\n",
       "      <td>-0.133666</td>\n",
       "      <td>0.719361</td>\n",
       "      <td>0.121817</td>\n",
       "      <td>0.007637</td>\n",
       "      <td>...</td>\n",
       "      <td>0.018398</td>\n",
       "      <td>-0.103849</td>\n",
       "      <td>-0.092852</td>\n",
       "      <td>1.187022</td>\n",
       "      <td>1.542415</td>\n",
       "      <td>0.043937</td>\n",
       "      <td>-0.501464</td>\n",
       "      <td>0.751688</td>\n",
       "      <td>0.442724</td>\n",
       "      <td>0.279680</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Short stories</th>\n",
       "      <td>0.154007</td>\n",
       "      <td>0.140222</td>\n",
       "      <td>0.176666</td>\n",
       "      <td>-0.324154</td>\n",
       "      <td>-0.094060</td>\n",
       "      <td>0.118691</td>\n",
       "      <td>-0.004279</td>\n",
       "      <td>0.242251</td>\n",
       "      <td>-0.330409</td>\n",
       "      <td>0.083586</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.037700</td>\n",
       "      <td>0.239126</td>\n",
       "      <td>-0.280021</td>\n",
       "      <td>0.188294</td>\n",
       "      <td>0.222700</td>\n",
       "      <td>0.809295</td>\n",
       "      <td>0.548097</td>\n",
       "      <td>-0.221869</td>\n",
       "      <td>0.091763</td>\n",
       "      <td>0.308416</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Detective</th>\n",
       "      <td>0.551482</td>\n",
       "      <td>0.002468</td>\n",
       "      <td>-0.219737</td>\n",
       "      <td>-0.223415</td>\n",
       "      <td>-0.035958</td>\n",
       "      <td>-0.132834</td>\n",
       "      <td>-0.112054</td>\n",
       "      <td>0.585594</td>\n",
       "      <td>0.339656</td>\n",
       "      <td>-0.088831</td>\n",
       "      <td>...</td>\n",
       "      <td>0.209985</td>\n",
       "      <td>-0.152889</td>\n",
       "      <td>-0.279632</td>\n",
       "      <td>0.144686</td>\n",
       "      <td>0.171874</td>\n",
       "      <td>0.126269</td>\n",
       "      <td>-0.476567</td>\n",
       "      <td>1.058940</td>\n",
       "      <td>-0.182358</td>\n",
       "      <td>0.158981</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Fairy tales</th>\n",
       "      <td>-0.167399</td>\n",
       "      <td>-0.137918</td>\n",
       "      <td>0.092702</td>\n",
       "      <td>0.025744</td>\n",
       "      <td>-0.215797</td>\n",
       "      <td>0.406489</td>\n",
       "      <td>0.190644</td>\n",
       "      <td>0.203460</td>\n",
       "      <td>-0.484346</td>\n",
       "      <td>0.651522</td>\n",
       "      <td>...</td>\n",
       "      <td>0.072939</td>\n",
       "      <td>0.752243</td>\n",
       "      <td>-0.464136</td>\n",
       "      <td>-0.012294</td>\n",
       "      <td>0.062075</td>\n",
       "      <td>0.226002</td>\n",
       "      <td>0.674164</td>\n",
       "      <td>-0.367265</td>\n",
       "      <td>-0.263040</td>\n",
       "      <td>0.077240</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Fantasy</th>\n",
       "      <td>0.520758</td>\n",
       "      <td>-0.086648</td>\n",
       "      <td>0.265348</td>\n",
       "      <td>0.112579</td>\n",
       "      <td>-0.245219</td>\n",
       "      <td>0.993454</td>\n",
       "      <td>0.190278</td>\n",
       "      <td>1.016912</td>\n",
       "      <td>-0.072096</td>\n",
       "      <td>0.245849</td>\n",
       "      <td>...</td>\n",
       "      <td>0.028712</td>\n",
       "      <td>0.242583</td>\n",
       "      <td>-0.348136</td>\n",
       "      <td>0.965874</td>\n",
       "      <td>0.993614</td>\n",
       "      <td>0.431507</td>\n",
       "      <td>-0.027357</td>\n",
       "      <td>0.133938</td>\n",
       "      <td>0.143134</td>\n",
       "      <td>0.512499</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: History</th>\n",
       "      <td>0.404821</td>\n",
       "      <td>-0.521361</td>\n",
       "      <td>0.583159</td>\n",
       "      <td>0.116843</td>\n",
       "      <td>-0.449350</td>\n",
       "      <td>0.346020</td>\n",
       "      <td>0.690006</td>\n",
       "      <td>-0.011309</td>\n",
       "      <td>-0.539294</td>\n",
       "      <td>0.417826</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.227996</td>\n",
       "      <td>0.368634</td>\n",
       "      <td>-0.587783</td>\n",
       "      <td>-0.005793</td>\n",
       "      <td>0.066833</td>\n",
       "      <td>-0.085285</td>\n",
       "      <td>0.115093</td>\n",
       "      <td>-0.033958</td>\n",
       "      <td>0.840874</td>\n",
       "      <td>0.340683</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Horror</th>\n",
       "      <td>0.422324</td>\n",
       "      <td>-0.018651</td>\n",
       "      <td>-0.124237</td>\n",
       "      <td>-0.012323</td>\n",
       "      <td>-0.162895</td>\n",
       "      <td>0.633736</td>\n",
       "      <td>-0.044933</td>\n",
       "      <td>1.242494</td>\n",
       "      <td>-0.196897</td>\n",
       "      <td>-0.136133</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.281227</td>\n",
       "      <td>-0.128236</td>\n",
       "      <td>-0.313256</td>\n",
       "      <td>0.623626</td>\n",
       "      <td>0.752403</td>\n",
       "      <td>0.504253</td>\n",
       "      <td>0.106491</td>\n",
       "      <td>0.387176</td>\n",
       "      <td>0.031635</td>\n",
       "      <td>0.222403</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Humor</th>\n",
       "      <td>0.100743</td>\n",
       "      <td>0.084803</td>\n",
       "      <td>-0.271567</td>\n",
       "      <td>-0.353772</td>\n",
       "      <td>-0.069471</td>\n",
       "      <td>-0.454329</td>\n",
       "      <td>-0.414515</td>\n",
       "      <td>-0.260145</td>\n",
       "      <td>1.042515</td>\n",
       "      <td>0.220420</td>\n",
       "      <td>...</td>\n",
       "      <td>1.634733</td>\n",
       "      <td>0.172543</td>\n",
       "      <td>-0.109613</td>\n",
       "      <td>0.135338</td>\n",
       "      <td>0.133981</td>\n",
       "      <td>0.179175</td>\n",
       "      <td>-0.108229</td>\n",
       "      <td>0.037208</td>\n",
       "      <td>-0.349047</td>\n",
       "      <td>-0.274112</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Juvenile</th>\n",
       "      <td>0.149980</td>\n",
       "      <td>0.174567</td>\n",
       "      <td>-0.238282</td>\n",
       "      <td>0.222926</td>\n",
       "      <td>0.308703</td>\n",
       "      <td>-0.002955</td>\n",
       "      <td>0.328506</td>\n",
       "      <td>-0.142979</td>\n",
       "      <td>-0.164752</td>\n",
       "      <td>1.325600</td>\n",
       "      <td>...</td>\n",
       "      <td>0.172543</td>\n",
       "      <td>1.280785</td>\n",
       "      <td>-0.367471</td>\n",
       "      <td>-0.024036</td>\n",
       "      <td>-0.093135</td>\n",
       "      <td>0.308313</td>\n",
       "      <td>0.002014</td>\n",
       "      <td>0.046720</td>\n",
       "      <td>0.189201</td>\n",
       "      <td>0.462887</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Man-woman</th>\n",
       "      <td>-0.433253</td>\n",
       "      <td>0.320883</td>\n",
       "      <td>-0.304188</td>\n",
       "      <td>0.118027</td>\n",
       "      <td>0.527450</td>\n",
       "      <td>-0.255082</td>\n",
       "      <td>-0.367657</td>\n",
       "      <td>-0.184749</td>\n",
       "      <td>0.291022</td>\n",
       "      <td>-0.375056</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.109613</td>\n",
       "      <td>-0.367471</td>\n",
       "      <td>0.880773</td>\n",
       "      <td>-0.153415</td>\n",
       "      <td>-0.239172</td>\n",
       "      <td>-0.077402</td>\n",
       "      <td>-0.364950</td>\n",
       "      <td>-0.149930</td>\n",
       "      <td>-0.458518</td>\n",
       "      <td>-0.189305</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: SF, American</th>\n",
       "      <td>0.744202</td>\n",
       "      <td>-0.150948</td>\n",
       "      <td>-0.043181</td>\n",
       "      <td>0.245135</td>\n",
       "      <td>-0.255644</td>\n",
       "      <td>0.960463</td>\n",
       "      <td>-0.141440</td>\n",
       "      <td>0.832844</td>\n",
       "      <td>0.011838</td>\n",
       "      <td>0.012056</td>\n",
       "      <td>...</td>\n",
       "      <td>0.135338</td>\n",
       "      <td>-0.024036</td>\n",
       "      <td>-0.153415</td>\n",
       "      <td>1.405323</td>\n",
       "      <td>1.444900</td>\n",
       "      <td>0.472463</td>\n",
       "      <td>-0.255961</td>\n",
       "      <td>0.436259</td>\n",
       "      <td>0.297718</td>\n",
       "      <td>0.469184</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: SF, Other</th>\n",
       "      <td>0.875582</td>\n",
       "      <td>-0.260595</td>\n",
       "      <td>-0.089314</td>\n",
       "      <td>0.099948</td>\n",
       "      <td>-0.462879</td>\n",
       "      <td>1.167167</td>\n",
       "      <td>-0.126151</td>\n",
       "      <td>0.934778</td>\n",
       "      <td>-0.012730</td>\n",
       "      <td>-0.012016</td>\n",
       "      <td>...</td>\n",
       "      <td>0.133981</td>\n",
       "      <td>-0.093135</td>\n",
       "      <td>-0.239172</td>\n",
       "      <td>1.444900</td>\n",
       "      <td>1.626317</td>\n",
       "      <td>0.337558</td>\n",
       "      <td>-0.243304</td>\n",
       "      <td>0.516040</td>\n",
       "      <td>0.317457</td>\n",
       "      <td>0.484270</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Short stories, American</th>\n",
       "      <td>0.260021</td>\n",
       "      <td>0.382052</td>\n",
       "      <td>-0.041788</td>\n",
       "      <td>-0.141680</td>\n",
       "      <td>0.292616</td>\n",
       "      <td>-0.067549</td>\n",
       "      <td>-0.131110</td>\n",
       "      <td>0.349977</td>\n",
       "      <td>-0.021625</td>\n",
       "      <td>0.158342</td>\n",
       "      <td>...</td>\n",
       "      <td>0.179175</td>\n",
       "      <td>0.308313</td>\n",
       "      <td>-0.077402</td>\n",
       "      <td>0.472463</td>\n",
       "      <td>0.337558</td>\n",
       "      <td>1.164938</td>\n",
       "      <td>0.224815</td>\n",
       "      <td>0.105440</td>\n",
       "      <td>0.031184</td>\n",
       "      <td>0.463830</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Short stories, Other</th>\n",
       "      <td>-0.372226</td>\n",
       "      <td>-0.252510</td>\n",
       "      <td>0.183456</td>\n",
       "      <td>-0.407849</td>\n",
       "      <td>-0.229332</td>\n",
       "      <td>-0.158386</td>\n",
       "      <td>0.003690</td>\n",
       "      <td>-0.173057</td>\n",
       "      <td>-0.547463</td>\n",
       "      <td>-0.068255</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.108229</td>\n",
       "      <td>0.002014</td>\n",
       "      <td>-0.364950</td>\n",
       "      <td>-0.255961</td>\n",
       "      <td>-0.243304</td>\n",
       "      <td>0.224815</td>\n",
       "      <td>0.948480</td>\n",
       "      <td>-0.650877</td>\n",
       "      <td>-0.013695</td>\n",
       "      <td>-0.180172</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Suspense</th>\n",
       "      <td>0.800998</td>\n",
       "      <td>-0.031086</td>\n",
       "      <td>-0.461443</td>\n",
       "      <td>0.012638</td>\n",
       "      <td>-0.016491</td>\n",
       "      <td>-0.005233</td>\n",
       "      <td>-0.214186</td>\n",
       "      <td>0.479396</td>\n",
       "      <td>0.203187</td>\n",
       "      <td>0.027415</td>\n",
       "      <td>...</td>\n",
       "      <td>0.037208</td>\n",
       "      <td>0.046720</td>\n",
       "      <td>-0.149930</td>\n",
       "      <td>0.436259</td>\n",
       "      <td>0.516040</td>\n",
       "      <td>0.105440</td>\n",
       "      <td>-0.650877</td>\n",
       "      <td>1.487747</td>\n",
       "      <td>0.156375</td>\n",
       "      <td>0.205460</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>War</th>\n",
       "      <td>0.596862</td>\n",
       "      <td>-0.271868</td>\n",
       "      <td>0.394171</td>\n",
       "      <td>-0.020547</td>\n",
       "      <td>-0.332612</td>\n",
       "      <td>0.460792</td>\n",
       "      <td>0.459537</td>\n",
       "      <td>0.192900</td>\n",
       "      <td>-0.361391</td>\n",
       "      <td>0.234068</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.349047</td>\n",
       "      <td>0.189201</td>\n",
       "      <td>-0.458518</td>\n",
       "      <td>0.297718</td>\n",
       "      <td>0.317457</td>\n",
       "      <td>0.031184</td>\n",
       "      <td>-0.013695</td>\n",
       "      <td>0.156375</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0.371306</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Western</th>\n",
       "      <td>0.661921</td>\n",
       "      <td>0.020310</td>\n",
       "      <td>0.330647</td>\n",
       "      <td>0.271194</td>\n",
       "      <td>0.002859</td>\n",
       "      <td>0.488347</td>\n",
       "      <td>0.649634</td>\n",
       "      <td>0.378327</td>\n",
       "      <td>-0.310805</td>\n",
       "      <td>0.362044</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.274112</td>\n",
       "      <td>0.462887</td>\n",
       "      <td>-0.189305</td>\n",
       "      <td>0.469184</td>\n",
       "      <td>0.484270</td>\n",
       "      <td>0.463830</td>\n",
       "      <td>-0.180172</td>\n",
       "      <td>0.205460</td>\n",
       "      <td>0.371306</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>32 rows × 32 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                               Adventure  Bildungsroman  Biographical  \\\n",
       "Adventure                            NaN      -0.089374      0.062906   \n",
       "Bildungsroman                  -0.089374       0.752103     -0.242454   \n",
       "Biographical                    0.062906      -0.242454           NaN   \n",
       "Christian                      -0.088186      -0.098786      0.025658   \n",
       "Domestic                       -0.360672       0.573723     -0.327723   \n",
       "Fantasy                         0.445826      -0.265496      0.536520   \n",
       "Historical                      0.113316      -0.268682      0.694278   \n",
       "Horror                          0.541967      -0.002656      0.096480   \n",
       "Humor                           0.034001       0.255883     -0.427395   \n",
       "Juvenile                        0.183723       0.022433     -0.179598   \n",
       "Love                           -0.197751       0.266773      0.013685   \n",
       "Mystery                         0.505942       0.046627     -0.344855   \n",
       "Novel                           0.283046      -0.065308      0.130448   \n",
       "Political                       0.382244      -0.239640     -0.048713   \n",
       "Psychological                   0.000161       0.437425     -0.406507   \n",
       "SF                              0.820735      -0.255388     -0.186762   \n",
       "Short stories                   0.154007       0.140222      0.176666   \n",
       "Subj: Detective                 0.551482       0.002468     -0.219737   \n",
       "Subj: Fairy tales              -0.167399      -0.137918      0.092702   \n",
       "Subj: Fantasy                   0.520758      -0.086648      0.265348   \n",
       "Subj: History                   0.404821      -0.521361      0.583159   \n",
       "Subj: Horror                    0.422324      -0.018651     -0.124237   \n",
       "Subj: Humor                     0.100743       0.084803     -0.271567   \n",
       "Subj: Juvenile                  0.149980       0.174567     -0.238282   \n",
       "Subj: Man-woman                -0.433253       0.320883     -0.304188   \n",
       "Subj: SF, American              0.744202      -0.150948     -0.043181   \n",
       "Subj: SF, Other                 0.875582      -0.260595     -0.089314   \n",
       "Subj: Short stories, American   0.260021       0.382052     -0.041788   \n",
       "Subj: Short stories, Other     -0.372226      -0.252510      0.183456   \n",
       "Suspense                        0.800998      -0.031086     -0.461443   \n",
       "War                             0.596862      -0.271868      0.394171   \n",
       "Western                         0.661921       0.020310      0.330647   \n",
       "\n",
       "                               Christian  Domestic   Fantasy  Historical  \\\n",
       "Adventure                      -0.088186 -0.360672  0.445826    0.113316   \n",
       "Bildungsroman                  -0.098786  0.573723 -0.265496   -0.268682   \n",
       "Biographical                    0.025658 -0.327723  0.536520    0.694278   \n",
       "Christian                            NaN  0.270747  0.288671    0.276808   \n",
       "Domestic                        0.270747  0.943536 -0.467619   -0.171254   \n",
       "Fantasy                         0.288671 -0.467619  1.335442    0.549064   \n",
       "Historical                      0.276808 -0.171254  0.549064    0.902016   \n",
       "Horror                          0.021624 -0.184249  0.752502   -0.025590   \n",
       "Humor                          -0.008394  0.217702 -0.312604   -0.510945   \n",
       "Juvenile                        0.357926  0.185440  0.034995    0.344883   \n",
       "Love                            0.355099  0.535108  0.062556   -0.043058   \n",
       "Mystery                        -0.054455  0.086565 -0.162077   -0.201735   \n",
       "Novel                           0.102202 -0.135913  0.311148    0.085618   \n",
       "Political                      -0.056673 -0.252530  0.066620   -0.147333   \n",
       "Psychological                   0.062063  0.525638 -0.122866   -0.353435   \n",
       "SF                              0.121891 -0.410694  0.853542   -0.133666   \n",
       "Short stories                  -0.324154 -0.094060  0.118691   -0.004279   \n",
       "Subj: Detective                -0.223415 -0.035958 -0.132834   -0.112054   \n",
       "Subj: Fairy tales               0.025744 -0.215797  0.406489    0.190644   \n",
       "Subj: Fantasy                   0.112579 -0.245219  0.993454    0.190278   \n",
       "Subj: History                   0.116843 -0.449350  0.346020    0.690006   \n",
       "Subj: Horror                   -0.012323 -0.162895  0.633736   -0.044933   \n",
       "Subj: Humor                    -0.353772 -0.069471 -0.454329   -0.414515   \n",
       "Subj: Juvenile                  0.222926  0.308703 -0.002955    0.328506   \n",
       "Subj: Man-woman                 0.118027  0.527450 -0.255082   -0.367657   \n",
       "Subj: SF, American              0.245135 -0.255644  0.960463   -0.141440   \n",
       "Subj: SF, Other                 0.099948 -0.462879  1.167167   -0.126151   \n",
       "Subj: Short stories, American  -0.141680  0.292616 -0.067549   -0.131110   \n",
       "Subj: Short stories, Other     -0.407849 -0.229332 -0.158386    0.003690   \n",
       "Suspense                        0.012638 -0.016491 -0.005233   -0.214186   \n",
       "War                            -0.020547 -0.332612  0.460792    0.459537   \n",
       "Western                         0.271194  0.002859  0.488347    0.649634   \n",
       "\n",
       "                                 Horror     Humor  Juvenile    ...     \\\n",
       "Adventure                      0.541967  0.034001  0.183723    ...      \n",
       "Bildungsroman                 -0.002656  0.255883  0.022433    ...      \n",
       "Biographical                   0.096480 -0.427395 -0.179598    ...      \n",
       "Christian                      0.021624 -0.008394  0.357926    ...      \n",
       "Domestic                      -0.184249  0.217702  0.185440    ...      \n",
       "Fantasy                        0.752502 -0.312604  0.034995    ...      \n",
       "Historical                    -0.025590 -0.510945  0.344883    ...      \n",
       "Horror                              NaN -0.087847 -0.117164    ...      \n",
       "Humor                         -0.087847  1.138995 -0.091322    ...      \n",
       "Juvenile                      -0.117164 -0.091322  1.040070    ...      \n",
       "Love                           0.121752  0.150789 -0.186289    ...      \n",
       "Mystery                        0.412305  0.401879 -0.021264    ...      \n",
       "Novel                          0.416615  0.045923  0.043407    ...      \n",
       "Political                      0.078068  0.392127 -0.487879    ...      \n",
       "Psychological                  0.146774  0.368046 -0.211551    ...      \n",
       "SF                             0.719361  0.121817  0.007637    ...      \n",
       "Short stories                  0.242251 -0.330409  0.083586    ...      \n",
       "Subj: Detective                0.585594  0.339656 -0.088831    ...      \n",
       "Subj: Fairy tales              0.203460 -0.484346  0.651522    ...      \n",
       "Subj: Fantasy                  1.016912 -0.072096  0.245849    ...      \n",
       "Subj: History                 -0.011309 -0.539294  0.417826    ...      \n",
       "Subj: Horror                   1.242494 -0.196897 -0.136133    ...      \n",
       "Subj: Humor                   -0.260145  1.042515  0.220420    ...      \n",
       "Subj: Juvenile                -0.142979 -0.164752  1.325600    ...      \n",
       "Subj: Man-woman               -0.184749  0.291022 -0.375056    ...      \n",
       "Subj: SF, American             0.832844  0.011838  0.012056    ...      \n",
       "Subj: SF, Other                0.934778 -0.012730 -0.012016    ...      \n",
       "Subj: Short stories, American  0.349977 -0.021625  0.158342    ...      \n",
       "Subj: Short stories, Other    -0.173057 -0.547463 -0.068255    ...      \n",
       "Suspense                       0.479396  0.203187  0.027415    ...      \n",
       "War                            0.192900 -0.361391  0.234068    ...      \n",
       "Western                        0.378327 -0.310805  0.362044    ...      \n",
       "\n",
       "                               Subj: Humor  Subj: Juvenile  Subj: Man-woman  \\\n",
       "Adventure                         0.100743        0.149980        -0.433253   \n",
       "Bildungsroman                     0.084803        0.174567         0.320883   \n",
       "Biographical                     -0.271567       -0.238282        -0.304188   \n",
       "Christian                        -0.353772        0.222926         0.118027   \n",
       "Domestic                         -0.069471        0.308703         0.527450   \n",
       "Fantasy                          -0.454329       -0.002955        -0.255082   \n",
       "Historical                       -0.414515        0.328506        -0.367657   \n",
       "Horror                           -0.260145       -0.142979        -0.184749   \n",
       "Humor                             1.042515       -0.164752         0.291022   \n",
       "Juvenile                          0.220420        1.325600        -0.375056   \n",
       "Love                             -0.371044       -0.076187         0.686181   \n",
       "Mystery                           0.261903       -0.082738         0.000384   \n",
       "Novel                            -0.141713       -0.048442        -0.108155   \n",
       "Political                         0.255315       -0.612336        -0.070625   \n",
       "Psychological                     0.012057       -0.132851         0.414421   \n",
       "SF                                0.018398       -0.103849        -0.092852   \n",
       "Short stories                    -0.037700        0.239126        -0.280021   \n",
       "Subj: Detective                   0.209985       -0.152889        -0.279632   \n",
       "Subj: Fairy tales                 0.072939        0.752243        -0.464136   \n",
       "Subj: Fantasy                     0.028712        0.242583        -0.348136   \n",
       "Subj: History                    -0.227996        0.368634        -0.587783   \n",
       "Subj: Horror                     -0.281227       -0.128236        -0.313256   \n",
       "Subj: Humor                       1.634733        0.172543        -0.109613   \n",
       "Subj: Juvenile                    0.172543        1.280785        -0.367471   \n",
       "Subj: Man-woman                  -0.109613       -0.367471         0.880773   \n",
       "Subj: SF, American                0.135338       -0.024036        -0.153415   \n",
       "Subj: SF, Other                   0.133981       -0.093135        -0.239172   \n",
       "Subj: Short stories, American     0.179175        0.308313        -0.077402   \n",
       "Subj: Short stories, Other       -0.108229        0.002014        -0.364950   \n",
       "Suspense                          0.037208        0.046720        -0.149930   \n",
       "War                              -0.349047        0.189201        -0.458518   \n",
       "Western                          -0.274112        0.462887        -0.189305   \n",
       "\n",
       "                               Subj: SF, American  Subj: SF, Other  \\\n",
       "Adventure                                0.744202         0.875582   \n",
       "Bildungsroman                           -0.150948        -0.260595   \n",
       "Biographical                            -0.043181        -0.089314   \n",
       "Christian                                0.245135         0.099948   \n",
       "Domestic                                -0.255644        -0.462879   \n",
       "Fantasy                                  0.960463         1.167167   \n",
       "Historical                              -0.141440        -0.126151   \n",
       "Horror                                   0.832844         0.934778   \n",
       "Humor                                    0.011838        -0.012730   \n",
       "Juvenile                                 0.012056        -0.012016   \n",
       "Love                                     0.035332        -0.109698   \n",
       "Mystery                                  0.061832         0.150294   \n",
       "Novel                                    0.258302         0.268316   \n",
       "Political                                0.354827         0.424520   \n",
       "Psychological                            0.125372         0.058868   \n",
       "SF                                       1.187022         1.542415   \n",
       "Short stories                            0.188294         0.222700   \n",
       "Subj: Detective                          0.144686         0.171874   \n",
       "Subj: Fairy tales                       -0.012294         0.062075   \n",
       "Subj: Fantasy                            0.965874         0.993614   \n",
       "Subj: History                           -0.005793         0.066833   \n",
       "Subj: Horror                             0.623626         0.752403   \n",
       "Subj: Humor                              0.135338         0.133981   \n",
       "Subj: Juvenile                          -0.024036        -0.093135   \n",
       "Subj: Man-woman                         -0.153415        -0.239172   \n",
       "Subj: SF, American                       1.405323         1.444900   \n",
       "Subj: SF, Other                          1.444900         1.626317   \n",
       "Subj: Short stories, American            0.472463         0.337558   \n",
       "Subj: Short stories, Other              -0.255961        -0.243304   \n",
       "Suspense                                 0.436259         0.516040   \n",
       "War                                      0.297718         0.317457   \n",
       "Western                                  0.469184         0.484270   \n",
       "\n",
       "                               Subj: Short stories, American  \\\n",
       "Adventure                                           0.260021   \n",
       "Bildungsroman                                       0.382052   \n",
       "Biographical                                       -0.041788   \n",
       "Christian                                          -0.141680   \n",
       "Domestic                                            0.292616   \n",
       "Fantasy                                            -0.067549   \n",
       "Historical                                         -0.131110   \n",
       "Horror                                              0.349977   \n",
       "Humor                                              -0.021625   \n",
       "Juvenile                                            0.158342   \n",
       "Love                                                0.011472   \n",
       "Mystery                                             0.035091   \n",
       "Novel                                              -0.058580   \n",
       "Political                                          -0.188444   \n",
       "Psychological                                       0.192172   \n",
       "SF                                                  0.043937   \n",
       "Short stories                                       0.809295   \n",
       "Subj: Detective                                     0.126269   \n",
       "Subj: Fairy tales                                   0.226002   \n",
       "Subj: Fantasy                                       0.431507   \n",
       "Subj: History                                      -0.085285   \n",
       "Subj: Horror                                        0.504253   \n",
       "Subj: Humor                                         0.179175   \n",
       "Subj: Juvenile                                      0.308313   \n",
       "Subj: Man-woman                                    -0.077402   \n",
       "Subj: SF, American                                  0.472463   \n",
       "Subj: SF, Other                                     0.337558   \n",
       "Subj: Short stories, American                       1.164938   \n",
       "Subj: Short stories, Other                          0.224815   \n",
       "Suspense                                            0.105440   \n",
       "War                                                 0.031184   \n",
       "Western                                             0.463830   \n",
       "\n",
       "                               Subj: Short stories, Other  Suspense       War  \\\n",
       "Adventure                                       -0.372226  0.800998  0.596862   \n",
       "Bildungsroman                                   -0.252510 -0.031086 -0.271868   \n",
       "Biographical                                     0.183456 -0.461443  0.394171   \n",
       "Christian                                       -0.407849  0.012638 -0.020547   \n",
       "Domestic                                        -0.229332 -0.016491 -0.332612   \n",
       "Fantasy                                         -0.158386 -0.005233  0.460792   \n",
       "Historical                                       0.003690 -0.214186  0.459537   \n",
       "Horror                                          -0.173057  0.479396  0.192900   \n",
       "Humor                                           -0.547463  0.203187 -0.361391   \n",
       "Juvenile                                        -0.068255  0.027415  0.234068   \n",
       "Love                                            -0.508129 -0.062171 -0.195371   \n",
       "Mystery                                         -0.750404  1.112460 -0.220826   \n",
       "Novel                                           -0.277479  0.251891  0.181652   \n",
       "Political                                       -0.505973  0.604561  0.182516   \n",
       "Psychological                                   -0.358002  0.192025 -0.253957   \n",
       "SF                                              -0.501464  0.751688  0.442724   \n",
       "Short stories                                    0.548097 -0.221869  0.091763   \n",
       "Subj: Detective                                 -0.476567  1.058940 -0.182358   \n",
       "Subj: Fairy tales                                0.674164 -0.367265 -0.263040   \n",
       "Subj: Fantasy                                   -0.027357  0.133938  0.143134   \n",
       "Subj: History                                    0.115093 -0.033958  0.840874   \n",
       "Subj: Horror                                     0.106491  0.387176  0.031635   \n",
       "Subj: Humor                                     -0.108229  0.037208 -0.349047   \n",
       "Subj: Juvenile                                   0.002014  0.046720  0.189201   \n",
       "Subj: Man-woman                                 -0.364950 -0.149930 -0.458518   \n",
       "Subj: SF, American                              -0.255961  0.436259  0.297718   \n",
       "Subj: SF, Other                                 -0.243304  0.516040  0.317457   \n",
       "Subj: Short stories, American                    0.224815  0.105440  0.031184   \n",
       "Subj: Short stories, Other                       0.948480 -0.650877 -0.013695   \n",
       "Suspense                                        -0.650877  1.487747  0.156375   \n",
       "War                                             -0.013695  0.156375       NaN   \n",
       "Western                                         -0.180172  0.205460  0.371306   \n",
       "\n",
       "                                Western  \n",
       "Adventure                      0.661921  \n",
       "Bildungsroman                  0.020310  \n",
       "Biographical                   0.330647  \n",
       "Christian                      0.271194  \n",
       "Domestic                       0.002859  \n",
       "Fantasy                        0.488347  \n",
       "Historical                     0.649634  \n",
       "Horror                         0.378327  \n",
       "Humor                         -0.310805  \n",
       "Juvenile                       0.362044  \n",
       "Love                           0.240213  \n",
       "Mystery                        0.112403  \n",
       "Novel                          0.240374  \n",
       "Political                     -0.226593  \n",
       "Psychological                 -0.086895  \n",
       "SF                             0.279680  \n",
       "Short stories                  0.308416  \n",
       "Subj: Detective                0.158981  \n",
       "Subj: Fairy tales              0.077240  \n",
       "Subj: Fantasy                  0.512499  \n",
       "Subj: History                  0.340683  \n",
       "Subj: Horror                   0.222403  \n",
       "Subj: Humor                   -0.274112  \n",
       "Subj: Juvenile                 0.462887  \n",
       "Subj: Man-woman               -0.189305  \n",
       "Subj: SF, American             0.469184  \n",
       "Subj: SF, Other                0.484270  \n",
       "Subj: Short stories, American  0.463830  \n",
       "Subj: Short stories, Other    -0.180172  \n",
       "Suspense                       0.205460  \n",
       "War                            0.371306  \n",
       "Western                             NaN  \n",
       "\n",
       "[32 rows x 32 columns]"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "withmatrix = pd.DataFrame(withoverlap)\n",
    "withmatrix"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Not using the diagonal: \n",
      "(0.46418034484518672, 3.7092558393835427e-54) n = 992\n"
     ]
    },
    {
     "data": {
      "image/png": "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\nXzhmWNJ01/8AAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x121cb2c88>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "socialvals, overlapvals = compare_to_social(social, withmatrix, use_self = False)\n",
    "print('Not using the diagonal: ')\n",
    "print(pearsonr(socialvals, overlapvals), 'n = ' + str(len(overlapvals)))\n",
    "plt.scatter(overlapvals, socialvals)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "That's a slightly stronger correlation, although we're no longer as confident that textual and social measures are independent. For actual historical research that might not matter; it matters for our methodological inquiry here.\n",
    "\n",
    "### Using more data\n",
    "\n",
    "But let's think about what we might do in actual historical research. Actually, once we allow genres to overlap, it allows a more aggressive approach to the data. We have B samples for 25 genres, so instead of delicately comparing two non-overlapping sets, we can compare multiple samples:\n",
    "\n",
    "    Genre 1 sample A -> Genre 2 sample A\n",
    "    Genre 1 sample B -> Genre 2 sample B\n",
    "    Genre 1 sample A -> Genre 2 sample B\n",
    "    Genre 1 sample B -> Genre 2 sample A\n",
    "\n",
    "This gets us a bit more accuracy."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Bildungsroman</th>\n",
       "      <th>Domestic</th>\n",
       "      <th>Fantasy</th>\n",
       "      <th>Historical</th>\n",
       "      <th>Humor</th>\n",
       "      <th>Juvenile</th>\n",
       "      <th>Love</th>\n",
       "      <th>Mystery</th>\n",
       "      <th>Novel</th>\n",
       "      <th>Psychological</th>\n",
       "      <th>...</th>\n",
       "      <th>Subj: History</th>\n",
       "      <th>Subj: Horror</th>\n",
       "      <th>Subj: Humor</th>\n",
       "      <th>Subj: Juvenile</th>\n",
       "      <th>Subj: Man-woman</th>\n",
       "      <th>Subj: SF, American</th>\n",
       "      <th>Subj: SF, Other</th>\n",
       "      <th>Subj: Short stories, American</th>\n",
       "      <th>Subj: Short stories, Other</th>\n",
       "      <th>Suspense</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Bildungsroman</th>\n",
       "      <td>0.752103</td>\n",
       "      <td>0.695285</td>\n",
       "      <td>-0.279645</td>\n",
       "      <td>-0.249937</td>\n",
       "      <td>0.177597</td>\n",
       "      <td>0.054758</td>\n",
       "      <td>0.354199</td>\n",
       "      <td>0.024972</td>\n",
       "      <td>-0.122689</td>\n",
       "      <td>0.389902</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.436131</td>\n",
       "      <td>-0.062553</td>\n",
       "      <td>0.158681</td>\n",
       "      <td>0.100237</td>\n",
       "      <td>0.318998</td>\n",
       "      <td>-0.111836</td>\n",
       "      <td>-0.275698</td>\n",
       "      <td>0.439505</td>\n",
       "      <td>-0.168517</td>\n",
       "      <td>-0.052127</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Domestic</th>\n",
       "      <td>0.695285</td>\n",
       "      <td>0.943536</td>\n",
       "      <td>-0.469475</td>\n",
       "      <td>-0.229198</td>\n",
       "      <td>0.172577</td>\n",
       "      <td>0.265088</td>\n",
       "      <td>0.568052</td>\n",
       "      <td>0.124253</td>\n",
       "      <td>-0.142838</td>\n",
       "      <td>0.467646</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.568450</td>\n",
       "      <td>-0.190011</td>\n",
       "      <td>0.017256</td>\n",
       "      <td>0.262299</td>\n",
       "      <td>0.519983</td>\n",
       "      <td>-0.247614</td>\n",
       "      <td>-0.478340</td>\n",
       "      <td>0.310728</td>\n",
       "      <td>-0.232260</td>\n",
       "      <td>-0.010400</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Fantasy</th>\n",
       "      <td>-0.279645</td>\n",
       "      <td>-0.469475</td>\n",
       "      <td>1.335442</td>\n",
       "      <td>0.488326</td>\n",
       "      <td>-0.336909</td>\n",
       "      <td>0.076545</td>\n",
       "      <td>-0.082691</td>\n",
       "      <td>-0.146981</td>\n",
       "      <td>0.222013</td>\n",
       "      <td>-0.204011</td>\n",
       "      <td>...</td>\n",
       "      <td>0.529632</td>\n",
       "      <td>0.636098</td>\n",
       "      <td>-0.475572</td>\n",
       "      <td>0.152093</td>\n",
       "      <td>-0.380047</td>\n",
       "      <td>0.861682</td>\n",
       "      <td>1.036809</td>\n",
       "      <td>-0.021803</td>\n",
       "      <td>-0.119503</td>\n",
       "      <td>0.036439</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Historical</th>\n",
       "      <td>-0.249937</td>\n",
       "      <td>-0.229198</td>\n",
       "      <td>0.488326</td>\n",
       "      <td>0.902016</td>\n",
       "      <td>-0.473623</td>\n",
       "      <td>0.182348</td>\n",
       "      <td>-0.107611</td>\n",
       "      <td>-0.286287</td>\n",
       "      <td>0.096480</td>\n",
       "      <td>-0.453047</td>\n",
       "      <td>...</td>\n",
       "      <td>0.686006</td>\n",
       "      <td>-0.087528</td>\n",
       "      <td>-0.405862</td>\n",
       "      <td>0.245175</td>\n",
       "      <td>-0.403724</td>\n",
       "      <td>-0.229708</td>\n",
       "      <td>-0.193842</td>\n",
       "      <td>-0.090226</td>\n",
       "      <td>0.033185</td>\n",
       "      <td>-0.211710</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Humor</th>\n",
       "      <td>0.177597</td>\n",
       "      <td>0.172577</td>\n",
       "      <td>-0.336909</td>\n",
       "      <td>-0.473623</td>\n",
       "      <td>1.138995</td>\n",
       "      <td>-0.035273</td>\n",
       "      <td>0.058404</td>\n",
       "      <td>0.422370</td>\n",
       "      <td>-0.060326</td>\n",
       "      <td>0.272532</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.428494</td>\n",
       "      <td>-0.190323</td>\n",
       "      <td>1.037500</td>\n",
       "      <td>-0.114211</td>\n",
       "      <td>0.320138</td>\n",
       "      <td>0.078223</td>\n",
       "      <td>0.051536</td>\n",
       "      <td>0.018448</td>\n",
       "      <td>-0.530738</td>\n",
       "      <td>0.238953</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Juvenile</th>\n",
       "      <td>0.054758</td>\n",
       "      <td>0.265088</td>\n",
       "      <td>0.076545</td>\n",
       "      <td>0.182348</td>\n",
       "      <td>-0.035273</td>\n",
       "      <td>1.040070</td>\n",
       "      <td>-0.235468</td>\n",
       "      <td>-0.088830</td>\n",
       "      <td>0.008029</td>\n",
       "      <td>-0.279019</td>\n",
       "      <td>...</td>\n",
       "      <td>0.162719</td>\n",
       "      <td>-0.198485</td>\n",
       "      <td>0.247369</td>\n",
       "      <td>1.158535</td>\n",
       "      <td>-0.277355</td>\n",
       "      <td>-0.065800</td>\n",
       "      <td>-0.160729</td>\n",
       "      <td>0.213250</td>\n",
       "      <td>-0.052234</td>\n",
       "      <td>0.072321</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Love</th>\n",
       "      <td>0.354199</td>\n",
       "      <td>0.568052</td>\n",
       "      <td>-0.082691</td>\n",
       "      <td>-0.107611</td>\n",
       "      <td>0.058404</td>\n",
       "      <td>-0.235468</td>\n",
       "      <td>0.795763</td>\n",
       "      <td>0.146600</td>\n",
       "      <td>0.081726</td>\n",
       "      <td>0.326868</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.364840</td>\n",
       "      <td>-0.029811</td>\n",
       "      <td>-0.360389</td>\n",
       "      <td>-0.179908</td>\n",
       "      <td>0.626659</td>\n",
       "      <td>-0.032486</td>\n",
       "      <td>-0.240995</td>\n",
       "      <td>0.025568</td>\n",
       "      <td>-0.367467</td>\n",
       "      <td>-0.000316</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Mystery</th>\n",
       "      <td>0.024972</td>\n",
       "      <td>0.124253</td>\n",
       "      <td>-0.146981</td>\n",
       "      <td>-0.286287</td>\n",
       "      <td>0.422370</td>\n",
       "      <td>-0.088830</td>\n",
       "      <td>0.146600</td>\n",
       "      <td>1.413493</td>\n",
       "      <td>0.224118</td>\n",
       "      <td>0.322704</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.256106</td>\n",
       "      <td>0.264191</td>\n",
       "      <td>0.312916</td>\n",
       "      <td>-0.138421</td>\n",
       "      <td>0.076221</td>\n",
       "      <td>0.244745</td>\n",
       "      <td>0.141918</td>\n",
       "      <td>-0.010669</td>\n",
       "      <td>-0.681936</td>\n",
       "      <td>1.136160</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Novel</th>\n",
       "      <td>-0.122689</td>\n",
       "      <td>-0.142838</td>\n",
       "      <td>0.222013</td>\n",
       "      <td>0.096480</td>\n",
       "      <td>-0.060326</td>\n",
       "      <td>0.008029</td>\n",
       "      <td>0.081726</td>\n",
       "      <td>0.224118</td>\n",
       "      <td>0.226494</td>\n",
       "      <td>-0.065787</td>\n",
       "      <td>...</td>\n",
       "      <td>0.156029</td>\n",
       "      <td>0.051842</td>\n",
       "      <td>-0.232472</td>\n",
       "      <td>-0.003301</td>\n",
       "      <td>-0.091933</td>\n",
       "      <td>0.070518</td>\n",
       "      <td>0.066252</td>\n",
       "      <td>-0.155141</td>\n",
       "      <td>-0.214052</td>\n",
       "      <td>0.247870</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Psychological</th>\n",
       "      <td>0.389902</td>\n",
       "      <td>0.467646</td>\n",
       "      <td>-0.204011</td>\n",
       "      <td>-0.453047</td>\n",
       "      <td>0.272532</td>\n",
       "      <td>-0.279019</td>\n",
       "      <td>0.326868</td>\n",
       "      <td>0.322704</td>\n",
       "      <td>-0.065787</td>\n",
       "      <td>0.660100</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.521001</td>\n",
       "      <td>0.141132</td>\n",
       "      <td>0.005631</td>\n",
       "      <td>-0.272788</td>\n",
       "      <td>0.392891</td>\n",
       "      <td>0.200231</td>\n",
       "      <td>0.161158</td>\n",
       "      <td>0.195254</td>\n",
       "      <td>-0.317172</td>\n",
       "      <td>0.207924</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SF</th>\n",
       "      <td>-0.297421</td>\n",
       "      <td>-0.442195</td>\n",
       "      <td>0.935801</td>\n",
       "      <td>-0.015291</td>\n",
       "      <td>0.040370</td>\n",
       "      <td>-0.025474</td>\n",
       "      <td>-0.098953</td>\n",
       "      <td>0.231846</td>\n",
       "      <td>0.229197</td>\n",
       "      <td>0.071021</td>\n",
       "      <td>...</td>\n",
       "      <td>0.252843</td>\n",
       "      <td>0.482758</td>\n",
       "      <td>-0.065443</td>\n",
       "      <td>0.014986</td>\n",
       "      <td>-0.217214</td>\n",
       "      <td>1.237482</td>\n",
       "      <td>1.445077</td>\n",
       "      <td>-0.015601</td>\n",
       "      <td>-0.411768</td>\n",
       "      <td>0.588677</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Short stories</th>\n",
       "      <td>0.079134</td>\n",
       "      <td>-0.127950</td>\n",
       "      <td>0.264865</td>\n",
       "      <td>-0.001133</td>\n",
       "      <td>-0.252243</td>\n",
       "      <td>0.052087</td>\n",
       "      <td>-0.147659</td>\n",
       "      <td>-0.265188</td>\n",
       "      <td>-0.062917</td>\n",
       "      <td>-0.081269</td>\n",
       "      <td>...</td>\n",
       "      <td>0.187389</td>\n",
       "      <td>0.503362</td>\n",
       "      <td>0.066418</td>\n",
       "      <td>0.096993</td>\n",
       "      <td>-0.328507</td>\n",
       "      <td>0.310592</td>\n",
       "      <td>0.355841</td>\n",
       "      <td>0.636606</td>\n",
       "      <td>0.530348</td>\n",
       "      <td>-0.154204</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Detective</th>\n",
       "      <td>0.007189</td>\n",
       "      <td>0.044409</td>\n",
       "      <td>-0.141089</td>\n",
       "      <td>-0.224141</td>\n",
       "      <td>0.429151</td>\n",
       "      <td>-0.151992</td>\n",
       "      <td>0.027092</td>\n",
       "      <td>1.354071</td>\n",
       "      <td>0.149612</td>\n",
       "      <td>0.223803</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.314224</td>\n",
       "      <td>0.560004</td>\n",
       "      <td>0.232184</td>\n",
       "      <td>-0.200100</td>\n",
       "      <td>-0.062364</td>\n",
       "      <td>0.256132</td>\n",
       "      <td>0.210732</td>\n",
       "      <td>0.065222</td>\n",
       "      <td>-0.470672</td>\n",
       "      <td>0.967069</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Fairy tales</th>\n",
       "      <td>-0.115558</td>\n",
       "      <td>-0.216992</td>\n",
       "      <td>0.548233</td>\n",
       "      <td>0.150004</td>\n",
       "      <td>-0.399880</td>\n",
       "      <td>0.699166</td>\n",
       "      <td>-0.414510</td>\n",
       "      <td>-0.462922</td>\n",
       "      <td>-0.122738</td>\n",
       "      <td>-0.494899</td>\n",
       "      <td>...</td>\n",
       "      <td>0.192209</td>\n",
       "      <td>0.287367</td>\n",
       "      <td>0.144897</td>\n",
       "      <td>0.755060</td>\n",
       "      <td>-0.560656</td>\n",
       "      <td>-0.079255</td>\n",
       "      <td>-0.047767</td>\n",
       "      <td>0.224170</td>\n",
       "      <td>0.465834</td>\n",
       "      <td>-0.356906</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Fantasy</th>\n",
       "      <td>-0.095104</td>\n",
       "      <td>-0.282551</td>\n",
       "      <td>1.113586</td>\n",
       "      <td>0.143958</td>\n",
       "      <td>-0.142784</td>\n",
       "      <td>0.202315</td>\n",
       "      <td>-0.046547</td>\n",
       "      <td>0.083086</td>\n",
       "      <td>0.137179</td>\n",
       "      <td>-0.060242</td>\n",
       "      <td>...</td>\n",
       "      <td>0.267180</td>\n",
       "      <td>0.995787</td>\n",
       "      <td>-0.105531</td>\n",
       "      <td>0.256460</td>\n",
       "      <td>-0.356312</td>\n",
       "      <td>0.983061</td>\n",
       "      <td>1.031595</td>\n",
       "      <td>0.350674</td>\n",
       "      <td>-0.049608</td>\n",
       "      <td>0.181596</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: History</th>\n",
       "      <td>-0.436131</td>\n",
       "      <td>-0.568450</td>\n",
       "      <td>0.529632</td>\n",
       "      <td>0.686006</td>\n",
       "      <td>-0.428494</td>\n",
       "      <td>0.162719</td>\n",
       "      <td>-0.364840</td>\n",
       "      <td>-0.256106</td>\n",
       "      <td>0.156029</td>\n",
       "      <td>-0.521001</td>\n",
       "      <td>...</td>\n",
       "      <td>1.097080</td>\n",
       "      <td>-0.024277</td>\n",
       "      <td>-0.235629</td>\n",
       "      <td>0.257022</td>\n",
       "      <td>-0.769767</td>\n",
       "      <td>0.026214</td>\n",
       "      <td>0.141487</td>\n",
       "      <td>-0.023398</td>\n",
       "      <td>0.123888</td>\n",
       "      <td>0.073085</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Horror</th>\n",
       "      <td>-0.062553</td>\n",
       "      <td>-0.190011</td>\n",
       "      <td>0.636098</td>\n",
       "      <td>-0.087528</td>\n",
       "      <td>-0.190323</td>\n",
       "      <td>-0.198485</td>\n",
       "      <td>-0.029811</td>\n",
       "      <td>0.264191</td>\n",
       "      <td>0.051842</td>\n",
       "      <td>0.141132</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.024277</td>\n",
       "      <td>1.511332</td>\n",
       "      <td>-0.206829</td>\n",
       "      <td>-0.169474</td>\n",
       "      <td>-0.289727</td>\n",
       "      <td>0.631884</td>\n",
       "      <td>0.736993</td>\n",
       "      <td>0.493340</td>\n",
       "      <td>0.148592</td>\n",
       "      <td>0.264687</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Humor</th>\n",
       "      <td>0.158681</td>\n",
       "      <td>0.017256</td>\n",
       "      <td>-0.475572</td>\n",
       "      <td>-0.405862</td>\n",
       "      <td>1.037500</td>\n",
       "      <td>0.247369</td>\n",
       "      <td>-0.360389</td>\n",
       "      <td>0.312916</td>\n",
       "      <td>-0.232472</td>\n",
       "      <td>0.005631</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.235629</td>\n",
       "      <td>-0.206829</td>\n",
       "      <td>1.634733</td>\n",
       "      <td>0.185252</td>\n",
       "      <td>-0.047561</td>\n",
       "      <td>0.148916</td>\n",
       "      <td>0.109498</td>\n",
       "      <td>0.312336</td>\n",
       "      <td>-0.119092</td>\n",
       "      <td>0.151557</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Juvenile</th>\n",
       "      <td>0.100237</td>\n",
       "      <td>0.262299</td>\n",
       "      <td>0.152093</td>\n",
       "      <td>0.245175</td>\n",
       "      <td>-0.114211</td>\n",
       "      <td>1.158535</td>\n",
       "      <td>-0.179908</td>\n",
       "      <td>-0.138421</td>\n",
       "      <td>-0.003301</td>\n",
       "      <td>-0.272788</td>\n",
       "      <td>...</td>\n",
       "      <td>0.257022</td>\n",
       "      <td>-0.169474</td>\n",
       "      <td>0.185252</td>\n",
       "      <td>1.280785</td>\n",
       "      <td>-0.363408</td>\n",
       "      <td>-0.044003</td>\n",
       "      <td>-0.127203</td>\n",
       "      <td>0.269469</td>\n",
       "      <td>-0.032138</td>\n",
       "      <td>0.091417</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Man-woman</th>\n",
       "      <td>0.318998</td>\n",
       "      <td>0.519983</td>\n",
       "      <td>-0.380047</td>\n",
       "      <td>-0.403724</td>\n",
       "      <td>0.320138</td>\n",
       "      <td>-0.277355</td>\n",
       "      <td>0.626659</td>\n",
       "      <td>0.076221</td>\n",
       "      <td>-0.091933</td>\n",
       "      <td>0.392891</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.769767</td>\n",
       "      <td>-0.289727</td>\n",
       "      <td>-0.047561</td>\n",
       "      <td>-0.363408</td>\n",
       "      <td>0.880773</td>\n",
       "      <td>-0.180259</td>\n",
       "      <td>-0.291424</td>\n",
       "      <td>-0.101060</td>\n",
       "      <td>-0.328204</td>\n",
       "      <td>-0.120980</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: SF, American</th>\n",
       "      <td>-0.111836</td>\n",
       "      <td>-0.247614</td>\n",
       "      <td>0.861682</td>\n",
       "      <td>-0.229708</td>\n",
       "      <td>0.078223</td>\n",
       "      <td>-0.065800</td>\n",
       "      <td>-0.032486</td>\n",
       "      <td>0.244745</td>\n",
       "      <td>0.070518</td>\n",
       "      <td>0.200231</td>\n",
       "      <td>...</td>\n",
       "      <td>0.026214</td>\n",
       "      <td>0.631884</td>\n",
       "      <td>0.148916</td>\n",
       "      <td>-0.044003</td>\n",
       "      <td>-0.180259</td>\n",
       "      <td>1.405323</td>\n",
       "      <td>1.389366</td>\n",
       "      <td>0.408203</td>\n",
       "      <td>-0.260600</td>\n",
       "      <td>0.517834</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: SF, Other</th>\n",
       "      <td>-0.275698</td>\n",
       "      <td>-0.478340</td>\n",
       "      <td>1.036809</td>\n",
       "      <td>-0.193842</td>\n",
       "      <td>0.051536</td>\n",
       "      <td>-0.160729</td>\n",
       "      <td>-0.240995</td>\n",
       "      <td>0.141918</td>\n",
       "      <td>0.066252</td>\n",
       "      <td>0.161158</td>\n",
       "      <td>...</td>\n",
       "      <td>0.141487</td>\n",
       "      <td>0.736993</td>\n",
       "      <td>0.109498</td>\n",
       "      <td>-0.127203</td>\n",
       "      <td>-0.291424</td>\n",
       "      <td>1.389366</td>\n",
       "      <td>1.626317</td>\n",
       "      <td>0.276807</td>\n",
       "      <td>-0.177688</td>\n",
       "      <td>0.417096</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Short stories, American</th>\n",
       "      <td>0.439505</td>\n",
       "      <td>0.310728</td>\n",
       "      <td>-0.021803</td>\n",
       "      <td>-0.090226</td>\n",
       "      <td>0.018448</td>\n",
       "      <td>0.213250</td>\n",
       "      <td>0.025568</td>\n",
       "      <td>-0.010669</td>\n",
       "      <td>-0.155141</td>\n",
       "      <td>0.195254</td>\n",
       "      <td>...</td>\n",
       "      <td>-0.023398</td>\n",
       "      <td>0.493340</td>\n",
       "      <td>0.312336</td>\n",
       "      <td>0.269469</td>\n",
       "      <td>-0.101060</td>\n",
       "      <td>0.408203</td>\n",
       "      <td>0.276807</td>\n",
       "      <td>1.164938</td>\n",
       "      <td>0.241964</td>\n",
       "      <td>0.061661</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Short stories, Other</th>\n",
       "      <td>-0.168517</td>\n",
       "      <td>-0.232260</td>\n",
       "      <td>-0.119503</td>\n",
       "      <td>0.033185</td>\n",
       "      <td>-0.530738</td>\n",
       "      <td>-0.052234</td>\n",
       "      <td>-0.367467</td>\n",
       "      <td>-0.681936</td>\n",
       "      <td>-0.214052</td>\n",
       "      <td>-0.317172</td>\n",
       "      <td>...</td>\n",
       "      <td>0.123888</td>\n",
       "      <td>0.148592</td>\n",
       "      <td>-0.119092</td>\n",
       "      <td>-0.032138</td>\n",
       "      <td>-0.328204</td>\n",
       "      <td>-0.260600</td>\n",
       "      <td>-0.177688</td>\n",
       "      <td>0.241964</td>\n",
       "      <td>0.948480</td>\n",
       "      <td>-0.604054</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Suspense</th>\n",
       "      <td>-0.052127</td>\n",
       "      <td>-0.010400</td>\n",
       "      <td>0.036439</td>\n",
       "      <td>-0.211710</td>\n",
       "      <td>0.238953</td>\n",
       "      <td>0.072321</td>\n",
       "      <td>-0.000316</td>\n",
       "      <td>1.136160</td>\n",
       "      <td>0.247870</td>\n",
       "      <td>0.207924</td>\n",
       "      <td>...</td>\n",
       "      <td>0.073085</td>\n",
       "      <td>0.264687</td>\n",
       "      <td>0.151557</td>\n",
       "      <td>0.091417</td>\n",
       "      <td>-0.120980</td>\n",
       "      <td>0.517834</td>\n",
       "      <td>0.417096</td>\n",
       "      <td>0.061661</td>\n",
       "      <td>-0.604054</td>\n",
       "      <td>1.487747</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>25 rows × 25 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                               Bildungsroman  Domestic   Fantasy  Historical  \\\n",
       "Bildungsroman                       0.752103  0.695285 -0.279645   -0.249937   \n",
       "Domestic                            0.695285  0.943536 -0.469475   -0.229198   \n",
       "Fantasy                            -0.279645 -0.469475  1.335442    0.488326   \n",
       "Historical                         -0.249937 -0.229198  0.488326    0.902016   \n",
       "Humor                               0.177597  0.172577 -0.336909   -0.473623   \n",
       "Juvenile                            0.054758  0.265088  0.076545    0.182348   \n",
       "Love                                0.354199  0.568052 -0.082691   -0.107611   \n",
       "Mystery                             0.024972  0.124253 -0.146981   -0.286287   \n",
       "Novel                              -0.122689 -0.142838  0.222013    0.096480   \n",
       "Psychological                       0.389902  0.467646 -0.204011   -0.453047   \n",
       "SF                                 -0.297421 -0.442195  0.935801   -0.015291   \n",
       "Short stories                       0.079134 -0.127950  0.264865   -0.001133   \n",
       "Subj: Detective                     0.007189  0.044409 -0.141089   -0.224141   \n",
       "Subj: Fairy tales                  -0.115558 -0.216992  0.548233    0.150004   \n",
       "Subj: Fantasy                      -0.095104 -0.282551  1.113586    0.143958   \n",
       "Subj: History                      -0.436131 -0.568450  0.529632    0.686006   \n",
       "Subj: Horror                       -0.062553 -0.190011  0.636098   -0.087528   \n",
       "Subj: Humor                         0.158681  0.017256 -0.475572   -0.405862   \n",
       "Subj: Juvenile                      0.100237  0.262299  0.152093    0.245175   \n",
       "Subj: Man-woman                     0.318998  0.519983 -0.380047   -0.403724   \n",
       "Subj: SF, American                 -0.111836 -0.247614  0.861682   -0.229708   \n",
       "Subj: SF, Other                    -0.275698 -0.478340  1.036809   -0.193842   \n",
       "Subj: Short stories, American       0.439505  0.310728 -0.021803   -0.090226   \n",
       "Subj: Short stories, Other         -0.168517 -0.232260 -0.119503    0.033185   \n",
       "Suspense                           -0.052127 -0.010400  0.036439   -0.211710   \n",
       "\n",
       "                                  Humor  Juvenile      Love   Mystery  \\\n",
       "Bildungsroman                  0.177597  0.054758  0.354199  0.024972   \n",
       "Domestic                       0.172577  0.265088  0.568052  0.124253   \n",
       "Fantasy                       -0.336909  0.076545 -0.082691 -0.146981   \n",
       "Historical                    -0.473623  0.182348 -0.107611 -0.286287   \n",
       "Humor                          1.138995 -0.035273  0.058404  0.422370   \n",
       "Juvenile                      -0.035273  1.040070 -0.235468 -0.088830   \n",
       "Love                           0.058404 -0.235468  0.795763  0.146600   \n",
       "Mystery                        0.422370 -0.088830  0.146600  1.413493   \n",
       "Novel                         -0.060326  0.008029  0.081726  0.224118   \n",
       "Psychological                  0.272532 -0.279019  0.326868  0.322704   \n",
       "SF                             0.040370 -0.025474 -0.098953  0.231846   \n",
       "Short stories                 -0.252243  0.052087 -0.147659 -0.265188   \n",
       "Subj: Detective                0.429151 -0.151992  0.027092  1.354071   \n",
       "Subj: Fairy tales             -0.399880  0.699166 -0.414510 -0.462922   \n",
       "Subj: Fantasy                 -0.142784  0.202315 -0.046547  0.083086   \n",
       "Subj: History                 -0.428494  0.162719 -0.364840 -0.256106   \n",
       "Subj: Horror                  -0.190323 -0.198485 -0.029811  0.264191   \n",
       "Subj: Humor                    1.037500  0.247369 -0.360389  0.312916   \n",
       "Subj: Juvenile                -0.114211  1.158535 -0.179908 -0.138421   \n",
       "Subj: Man-woman                0.320138 -0.277355  0.626659  0.076221   \n",
       "Subj: SF, American             0.078223 -0.065800 -0.032486  0.244745   \n",
       "Subj: SF, Other                0.051536 -0.160729 -0.240995  0.141918   \n",
       "Subj: Short stories, American  0.018448  0.213250  0.025568 -0.010669   \n",
       "Subj: Short stories, Other    -0.530738 -0.052234 -0.367467 -0.681936   \n",
       "Suspense                       0.238953  0.072321 -0.000316  1.136160   \n",
       "\n",
       "                                  Novel  Psychological    ...     \\\n",
       "Bildungsroman                 -0.122689       0.389902    ...      \n",
       "Domestic                      -0.142838       0.467646    ...      \n",
       "Fantasy                        0.222013      -0.204011    ...      \n",
       "Historical                     0.096480      -0.453047    ...      \n",
       "Humor                         -0.060326       0.272532    ...      \n",
       "Juvenile                       0.008029      -0.279019    ...      \n",
       "Love                           0.081726       0.326868    ...      \n",
       "Mystery                        0.224118       0.322704    ...      \n",
       "Novel                          0.226494      -0.065787    ...      \n",
       "Psychological                 -0.065787       0.660100    ...      \n",
       "SF                             0.229197       0.071021    ...      \n",
       "Short stories                 -0.062917      -0.081269    ...      \n",
       "Subj: Detective                0.149612       0.223803    ...      \n",
       "Subj: Fairy tales             -0.122738      -0.494899    ...      \n",
       "Subj: Fantasy                  0.137179      -0.060242    ...      \n",
       "Subj: History                  0.156029      -0.521001    ...      \n",
       "Subj: Horror                   0.051842       0.141132    ...      \n",
       "Subj: Humor                   -0.232472       0.005631    ...      \n",
       "Subj: Juvenile                -0.003301      -0.272788    ...      \n",
       "Subj: Man-woman               -0.091933       0.392891    ...      \n",
       "Subj: SF, American             0.070518       0.200231    ...      \n",
       "Subj: SF, Other                0.066252       0.161158    ...      \n",
       "Subj: Short stories, American -0.155141       0.195254    ...      \n",
       "Subj: Short stories, Other    -0.214052      -0.317172    ...      \n",
       "Suspense                       0.247870       0.207924    ...      \n",
       "\n",
       "                               Subj: History  Subj: Horror  Subj: Humor  \\\n",
       "Bildungsroman                      -0.436131     -0.062553     0.158681   \n",
       "Domestic                           -0.568450     -0.190011     0.017256   \n",
       "Fantasy                             0.529632      0.636098    -0.475572   \n",
       "Historical                          0.686006     -0.087528    -0.405862   \n",
       "Humor                              -0.428494     -0.190323     1.037500   \n",
       "Juvenile                            0.162719     -0.198485     0.247369   \n",
       "Love                               -0.364840     -0.029811    -0.360389   \n",
       "Mystery                            -0.256106      0.264191     0.312916   \n",
       "Novel                               0.156029      0.051842    -0.232472   \n",
       "Psychological                      -0.521001      0.141132     0.005631   \n",
       "SF                                  0.252843      0.482758    -0.065443   \n",
       "Short stories                       0.187389      0.503362     0.066418   \n",
       "Subj: Detective                    -0.314224      0.560004     0.232184   \n",
       "Subj: Fairy tales                   0.192209      0.287367     0.144897   \n",
       "Subj: Fantasy                       0.267180      0.995787    -0.105531   \n",
       "Subj: History                       1.097080     -0.024277    -0.235629   \n",
       "Subj: Horror                       -0.024277      1.511332    -0.206829   \n",
       "Subj: Humor                        -0.235629     -0.206829     1.634733   \n",
       "Subj: Juvenile                      0.257022     -0.169474     0.185252   \n",
       "Subj: Man-woman                    -0.769767     -0.289727    -0.047561   \n",
       "Subj: SF, American                  0.026214      0.631884     0.148916   \n",
       "Subj: SF, Other                     0.141487      0.736993     0.109498   \n",
       "Subj: Short stories, American      -0.023398      0.493340     0.312336   \n",
       "Subj: Short stories, Other          0.123888      0.148592    -0.119092   \n",
       "Suspense                            0.073085      0.264687     0.151557   \n",
       "\n",
       "                               Subj: Juvenile  Subj: Man-woman  \\\n",
       "Bildungsroman                        0.100237         0.318998   \n",
       "Domestic                             0.262299         0.519983   \n",
       "Fantasy                              0.152093        -0.380047   \n",
       "Historical                           0.245175        -0.403724   \n",
       "Humor                               -0.114211         0.320138   \n",
       "Juvenile                             1.158535        -0.277355   \n",
       "Love                                -0.179908         0.626659   \n",
       "Mystery                             -0.138421         0.076221   \n",
       "Novel                               -0.003301        -0.091933   \n",
       "Psychological                       -0.272788         0.392891   \n",
       "SF                                   0.014986        -0.217214   \n",
       "Short stories                        0.096993        -0.328507   \n",
       "Subj: Detective                     -0.200100        -0.062364   \n",
       "Subj: Fairy tales                    0.755060        -0.560656   \n",
       "Subj: Fantasy                        0.256460        -0.356312   \n",
       "Subj: History                        0.257022        -0.769767   \n",
       "Subj: Horror                        -0.169474        -0.289727   \n",
       "Subj: Humor                          0.185252        -0.047561   \n",
       "Subj: Juvenile                       1.280785        -0.363408   \n",
       "Subj: Man-woman                     -0.363408         0.880773   \n",
       "Subj: SF, American                  -0.044003        -0.180259   \n",
       "Subj: SF, Other                     -0.127203        -0.291424   \n",
       "Subj: Short stories, American        0.269469        -0.101060   \n",
       "Subj: Short stories, Other          -0.032138        -0.328204   \n",
       "Suspense                             0.091417        -0.120980   \n",
       "\n",
       "                               Subj: SF, American  Subj: SF, Other  \\\n",
       "Bildungsroman                           -0.111836        -0.275698   \n",
       "Domestic                                -0.247614        -0.478340   \n",
       "Fantasy                                  0.861682         1.036809   \n",
       "Historical                              -0.229708        -0.193842   \n",
       "Humor                                    0.078223         0.051536   \n",
       "Juvenile                                -0.065800        -0.160729   \n",
       "Love                                    -0.032486        -0.240995   \n",
       "Mystery                                  0.244745         0.141918   \n",
       "Novel                                    0.070518         0.066252   \n",
       "Psychological                            0.200231         0.161158   \n",
       "SF                                       1.237482         1.445077   \n",
       "Short stories                            0.310592         0.355841   \n",
       "Subj: Detective                          0.256132         0.210732   \n",
       "Subj: Fairy tales                       -0.079255        -0.047767   \n",
       "Subj: Fantasy                            0.983061         1.031595   \n",
       "Subj: History                            0.026214         0.141487   \n",
       "Subj: Horror                             0.631884         0.736993   \n",
       "Subj: Humor                              0.148916         0.109498   \n",
       "Subj: Juvenile                          -0.044003        -0.127203   \n",
       "Subj: Man-woman                         -0.180259        -0.291424   \n",
       "Subj: SF, American                       1.405323         1.389366   \n",
       "Subj: SF, Other                          1.389366         1.626317   \n",
       "Subj: Short stories, American            0.408203         0.276807   \n",
       "Subj: Short stories, Other              -0.260600        -0.177688   \n",
       "Suspense                                 0.517834         0.417096   \n",
       "\n",
       "                               Subj: Short stories, American  \\\n",
       "Bildungsroman                                       0.439505   \n",
       "Domestic                                            0.310728   \n",
       "Fantasy                                            -0.021803   \n",
       "Historical                                         -0.090226   \n",
       "Humor                                               0.018448   \n",
       "Juvenile                                            0.213250   \n",
       "Love                                                0.025568   \n",
       "Mystery                                            -0.010669   \n",
       "Novel                                              -0.155141   \n",
       "Psychological                                       0.195254   \n",
       "SF                                                 -0.015601   \n",
       "Short stories                                       0.636606   \n",
       "Subj: Detective                                     0.065222   \n",
       "Subj: Fairy tales                                   0.224170   \n",
       "Subj: Fantasy                                       0.350674   \n",
       "Subj: History                                      -0.023398   \n",
       "Subj: Horror                                        0.493340   \n",
       "Subj: Humor                                         0.312336   \n",
       "Subj: Juvenile                                      0.269469   \n",
       "Subj: Man-woman                                    -0.101060   \n",
       "Subj: SF, American                                  0.408203   \n",
       "Subj: SF, Other                                     0.276807   \n",
       "Subj: Short stories, American                       1.164938   \n",
       "Subj: Short stories, Other                          0.241964   \n",
       "Suspense                                            0.061661   \n",
       "\n",
       "                               Subj: Short stories, Other  Suspense  \n",
       "Bildungsroman                                   -0.168517 -0.052127  \n",
       "Domestic                                        -0.232260 -0.010400  \n",
       "Fantasy                                         -0.119503  0.036439  \n",
       "Historical                                       0.033185 -0.211710  \n",
       "Humor                                           -0.530738  0.238953  \n",
       "Juvenile                                        -0.052234  0.072321  \n",
       "Love                                            -0.367467 -0.000316  \n",
       "Mystery                                         -0.681936  1.136160  \n",
       "Novel                                           -0.214052  0.247870  \n",
       "Psychological                                   -0.317172  0.207924  \n",
       "SF                                              -0.411768  0.588677  \n",
       "Short stories                                    0.530348 -0.154204  \n",
       "Subj: Detective                                 -0.470672  0.967069  \n",
       "Subj: Fairy tales                                0.465834 -0.356906  \n",
       "Subj: Fantasy                                   -0.049608  0.181596  \n",
       "Subj: History                                    0.123888  0.073085  \n",
       "Subj: Horror                                     0.148592  0.264687  \n",
       "Subj: Humor                                     -0.119092  0.151557  \n",
       "Subj: Juvenile                                  -0.032138  0.091417  \n",
       "Subj: Man-woman                                 -0.328204 -0.120980  \n",
       "Subj: SF, American                              -0.260600  0.517834  \n",
       "Subj: SF, Other                                 -0.177688  0.417096  \n",
       "Subj: Short stories, American                    0.241964  0.061661  \n",
       "Subj: Short stories, Other                       0.948480 -0.604054  \n",
       "Suspense                                        -0.604054  1.487747  \n",
       "\n",
       "[25 rows x 25 columns]"
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Now let's use all the comparisons.\n",
    "\n",
    "allcomparisons = dict()\n",
    "\n",
    "for g1 in bgenres:\n",
    "    bless1 = g1[0 : -2]\n",
    "    allcomparisons[bless1] = dict()\n",
    "    \n",
    "    for g2 in bgenres:\n",
    "        bless2 = g2[0 : -2]\n",
    "        \n",
    "        bkey1 = compress(bless1)\n",
    "        bkey2 = compress(bless2)\n",
    "        key1 = compress(g1)\n",
    "        key2 = compress(g2)\n",
    "        \n",
    "        allcomparisons[bless1][bless2] = []\n",
    "        allcomparisons[bless1][bless2].append(avgwoverlap[key1][bkey2])\n",
    "        allcomparisons[bless1][bless2].append(avgwoverlap[bkey1][key2])\n",
    "        if not g1 == g2:\n",
    "            allcomparisons[bless1][bless2].append(avgwoverlap[bkey1][bkey2])\n",
    "            allcomparisons[bless1][bless2].append(avgwoverlap[key1][key2])\n",
    "        \n",
    "        allcomparisons[bless1][bless2] = sum(allcomparisons[bless1][bless2]) / len(allcomparisons[bless1][bless2])\n",
    "\n",
    "allmatrix = pd.DataFrame(allcomparisons)\n",
    "allmatrix"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Not using the diagonal: \n",
      "(0.53334264036356527, 2.0948930976372326e-45) n = 600\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x121cf9400>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "socialvals, datarichvals = compare_to_social(social, allmatrix, use_self = False)\n",
    "print('Not using the diagonal: ')\n",
    "print(pearsonr(socialvals, datarichvals), 'n = ' + str(len(datarichvals)))\n",
    "plt.scatter(datarichvals, socialvals)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Mapping genres in two dimensions\n",
    "\n",
    "This is relatively easy with multidimensional scaling.\n",
    "\n",
    "But first, we need a matrix whose cells can be interpreted as positive \"distances.\" Our existing matrix is sometimes negative, and worse, the biggest numbers are the *closest* comparisons. We need to flip that, like so:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [],
   "source": [
    "sansmatrix.fillna(0, inplace = True)\n",
    "negativepart = sansmatrix.values.min()\n",
    "vizmatrix = sansmatrix - negativepart\n",
    "maximumvalue = vizmatrix.values.max()\n",
    "vizmatrix = maximumvalue - vizmatrix\n",
    "for idx in vizmatrix.index:\n",
    "    vizmatrix.loc[idx, idx] = 0\n",
    "    # diagonal should be zero for this purpose"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Adventure</th>\n",
       "      <th>Bildungsroman</th>\n",
       "      <th>Biographical</th>\n",
       "      <th>Christian</th>\n",
       "      <th>Domestic</th>\n",
       "      <th>Fantasy</th>\n",
       "      <th>Historical</th>\n",
       "      <th>Horror</th>\n",
       "      <th>Humor</th>\n",
       "      <th>Juvenile</th>\n",
       "      <th>...</th>\n",
       "      <th>Subj: Humor</th>\n",
       "      <th>Subj: Juvenile</th>\n",
       "      <th>Subj: Man-woman</th>\n",
       "      <th>Subj: SF, American</th>\n",
       "      <th>Subj: SF, Other</th>\n",
       "      <th>Subj: Short stories, American</th>\n",
       "      <th>Subj: Short stories, Other</th>\n",
       "      <th>Suspense</th>\n",
       "      <th>War</th>\n",
       "      <th>Western</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>Adventure</th>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.777847</td>\n",
       "      <td>1.718401</td>\n",
       "      <td>1.793862</td>\n",
       "      <td>2.071062</td>\n",
       "      <td>1.221882</td>\n",
       "      <td>1.486000</td>\n",
       "      <td>1.163709</td>\n",
       "      <td>1.671675</td>\n",
       "      <td>1.521953</td>\n",
       "      <td>...</td>\n",
       "      <td>1.604933</td>\n",
       "      <td>1.555696</td>\n",
       "      <td>2.170206</td>\n",
       "      <td>0.961474</td>\n",
       "      <td>0.830094</td>\n",
       "      <td>1.445655</td>\n",
       "      <td>2.077902</td>\n",
       "      <td>0.904678</td>\n",
       "      <td>1.204188</td>\n",
       "      <td>1.157812</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Bildungsroman</th>\n",
       "      <td>1.777847</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.948130</td>\n",
       "      <td>1.804462</td>\n",
       "      <td>1.124193</td>\n",
       "      <td>1.971172</td>\n",
       "      <td>1.974358</td>\n",
       "      <td>1.708332</td>\n",
       "      <td>1.589620</td>\n",
       "      <td>1.683243</td>\n",
       "      <td>...</td>\n",
       "      <td>1.620873</td>\n",
       "      <td>1.531109</td>\n",
       "      <td>1.448997</td>\n",
       "      <td>1.856624</td>\n",
       "      <td>1.966271</td>\n",
       "      <td>1.323624</td>\n",
       "      <td>1.958186</td>\n",
       "      <td>1.790750</td>\n",
       "      <td>2.000363</td>\n",
       "      <td>1.685366</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Biographical</th>\n",
       "      <td>1.718401</td>\n",
       "      <td>1.948130</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.532363</td>\n",
       "      <td>2.033399</td>\n",
       "      <td>1.169157</td>\n",
       "      <td>1.009559</td>\n",
       "      <td>1.609196</td>\n",
       "      <td>2.133071</td>\n",
       "      <td>1.885274</td>\n",
       "      <td>...</td>\n",
       "      <td>1.977243</td>\n",
       "      <td>1.943958</td>\n",
       "      <td>2.009864</td>\n",
       "      <td>1.748857</td>\n",
       "      <td>1.794990</td>\n",
       "      <td>1.747464</td>\n",
       "      <td>1.522220</td>\n",
       "      <td>2.167119</td>\n",
       "      <td>1.274681</td>\n",
       "      <td>1.484902</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Christian</th>\n",
       "      <td>1.793862</td>\n",
       "      <td>1.804462</td>\n",
       "      <td>1.532363</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.683885</td>\n",
       "      <td>1.342774</td>\n",
       "      <td>1.428869</td>\n",
       "      <td>1.684052</td>\n",
       "      <td>1.807578</td>\n",
       "      <td>1.347750</td>\n",
       "      <td>...</td>\n",
       "      <td>2.059448</td>\n",
       "      <td>1.482750</td>\n",
       "      <td>1.587649</td>\n",
       "      <td>1.460542</td>\n",
       "      <td>1.605728</td>\n",
       "      <td>1.847356</td>\n",
       "      <td>2.113525</td>\n",
       "      <td>1.693038</td>\n",
       "      <td>1.726223</td>\n",
       "      <td>1.434482</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Domestic</th>\n",
       "      <td>2.071062</td>\n",
       "      <td>1.124193</td>\n",
       "      <td>2.033399</td>\n",
       "      <td>1.683885</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>2.173295</td>\n",
       "      <td>1.876930</td>\n",
       "      <td>1.889925</td>\n",
       "      <td>1.487974</td>\n",
       "      <td>1.520236</td>\n",
       "      <td>...</td>\n",
       "      <td>1.775147</td>\n",
       "      <td>1.396973</td>\n",
       "      <td>1.186084</td>\n",
       "      <td>1.961320</td>\n",
       "      <td>2.168555</td>\n",
       "      <td>1.413061</td>\n",
       "      <td>1.935009</td>\n",
       "      <td>1.722168</td>\n",
       "      <td>2.020034</td>\n",
       "      <td>1.702817</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Fantasy</th>\n",
       "      <td>1.221882</td>\n",
       "      <td>1.971172</td>\n",
       "      <td>1.169157</td>\n",
       "      <td>1.342774</td>\n",
       "      <td>2.173295</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.156612</td>\n",
       "      <td>1.018663</td>\n",
       "      <td>2.018280</td>\n",
       "      <td>1.670681</td>\n",
       "      <td>...</td>\n",
       "      <td>2.160005</td>\n",
       "      <td>1.708631</td>\n",
       "      <td>1.960758</td>\n",
       "      <td>0.745213</td>\n",
       "      <td>0.538509</td>\n",
       "      <td>1.773225</td>\n",
       "      <td>1.864062</td>\n",
       "      <td>1.710909</td>\n",
       "      <td>1.201032</td>\n",
       "      <td>1.217329</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Historical</th>\n",
       "      <td>1.486000</td>\n",
       "      <td>1.974358</td>\n",
       "      <td>1.009559</td>\n",
       "      <td>1.428869</td>\n",
       "      <td>1.876930</td>\n",
       "      <td>1.156612</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.731266</td>\n",
       "      <td>2.216621</td>\n",
       "      <td>1.360793</td>\n",
       "      <td>...</td>\n",
       "      <td>2.120191</td>\n",
       "      <td>1.377170</td>\n",
       "      <td>2.080518</td>\n",
       "      <td>1.847117</td>\n",
       "      <td>1.831827</td>\n",
       "      <td>1.836786</td>\n",
       "      <td>1.701986</td>\n",
       "      <td>1.919862</td>\n",
       "      <td>1.219098</td>\n",
       "      <td>1.056042</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Horror</th>\n",
       "      <td>1.163709</td>\n",
       "      <td>1.708332</td>\n",
       "      <td>1.609196</td>\n",
       "      <td>1.684052</td>\n",
       "      <td>1.889925</td>\n",
       "      <td>1.018663</td>\n",
       "      <td>1.731266</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.793523</td>\n",
       "      <td>1.822840</td>\n",
       "      <td>...</td>\n",
       "      <td>1.965821</td>\n",
       "      <td>1.848656</td>\n",
       "      <td>1.890425</td>\n",
       "      <td>0.782088</td>\n",
       "      <td>0.766251</td>\n",
       "      <td>1.355699</td>\n",
       "      <td>1.878733</td>\n",
       "      <td>1.226281</td>\n",
       "      <td>1.512776</td>\n",
       "      <td>1.424180</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Humor</th>\n",
       "      <td>1.671675</td>\n",
       "      <td>1.589620</td>\n",
       "      <td>2.133071</td>\n",
       "      <td>1.807578</td>\n",
       "      <td>1.487974</td>\n",
       "      <td>2.018280</td>\n",
       "      <td>2.216621</td>\n",
       "      <td>1.793523</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.796998</td>\n",
       "      <td>...</td>\n",
       "      <td>0.663161</td>\n",
       "      <td>1.870428</td>\n",
       "      <td>1.414654</td>\n",
       "      <td>1.693838</td>\n",
       "      <td>1.718406</td>\n",
       "      <td>1.727301</td>\n",
       "      <td>2.253139</td>\n",
       "      <td>1.502489</td>\n",
       "      <td>2.067067</td>\n",
       "      <td>2.016481</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Juvenile</th>\n",
       "      <td>1.521953</td>\n",
       "      <td>1.683243</td>\n",
       "      <td>1.885274</td>\n",
       "      <td>1.347750</td>\n",
       "      <td>1.520236</td>\n",
       "      <td>1.670681</td>\n",
       "      <td>1.360793</td>\n",
       "      <td>1.822840</td>\n",
       "      <td>1.796998</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>...</td>\n",
       "      <td>1.485256</td>\n",
       "      <td>0.453834</td>\n",
       "      <td>2.080732</td>\n",
       "      <td>1.693620</td>\n",
       "      <td>1.717692</td>\n",
       "      <td>1.547334</td>\n",
       "      <td>1.773932</td>\n",
       "      <td>1.678261</td>\n",
       "      <td>1.471608</td>\n",
       "      <td>1.343632</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Love</th>\n",
       "      <td>1.903427</td>\n",
       "      <td>1.406156</td>\n",
       "      <td>1.691991</td>\n",
       "      <td>1.350577</td>\n",
       "      <td>1.223041</td>\n",
       "      <td>1.643120</td>\n",
       "      <td>1.804284</td>\n",
       "      <td>1.612854</td>\n",
       "      <td>1.554887</td>\n",
       "      <td>1.891965</td>\n",
       "      <td>...</td>\n",
       "      <td>2.076721</td>\n",
       "      <td>1.781863</td>\n",
       "      <td>1.002725</td>\n",
       "      <td>1.670344</td>\n",
       "      <td>1.815374</td>\n",
       "      <td>1.694204</td>\n",
       "      <td>2.213805</td>\n",
       "      <td>1.767848</td>\n",
       "      <td>1.903915</td>\n",
       "      <td>1.602708</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Mystery</th>\n",
       "      <td>1.199734</td>\n",
       "      <td>1.659049</td>\n",
       "      <td>2.050531</td>\n",
       "      <td>1.760131</td>\n",
       "      <td>1.619112</td>\n",
       "      <td>1.867754</td>\n",
       "      <td>1.907411</td>\n",
       "      <td>1.404812</td>\n",
       "      <td>1.345732</td>\n",
       "      <td>1.726940</td>\n",
       "      <td>...</td>\n",
       "      <td>1.443774</td>\n",
       "      <td>1.788414</td>\n",
       "      <td>1.705293</td>\n",
       "      <td>1.643844</td>\n",
       "      <td>1.555382</td>\n",
       "      <td>1.670585</td>\n",
       "      <td>2.456080</td>\n",
       "      <td>0.593216</td>\n",
       "      <td>1.926502</td>\n",
       "      <td>1.593273</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Novel</th>\n",
       "      <td>1.600256</td>\n",
       "      <td>1.832113</td>\n",
       "      <td>1.575228</td>\n",
       "      <td>1.603474</td>\n",
       "      <td>1.826066</td>\n",
       "      <td>1.572825</td>\n",
       "      <td>1.641354</td>\n",
       "      <td>1.289061</td>\n",
       "      <td>1.691017</td>\n",
       "      <td>1.662269</td>\n",
       "      <td>...</td>\n",
       "      <td>1.847389</td>\n",
       "      <td>1.754118</td>\n",
       "      <td>1.888749</td>\n",
       "      <td>1.447374</td>\n",
       "      <td>1.437360</td>\n",
       "      <td>1.764257</td>\n",
       "      <td>1.983155</td>\n",
       "      <td>1.605329</td>\n",
       "      <td>1.524024</td>\n",
       "      <td>1.465303</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Political</th>\n",
       "      <td>1.552332</td>\n",
       "      <td>1.980382</td>\n",
       "      <td>1.754389</td>\n",
       "      <td>1.762349</td>\n",
       "      <td>1.958206</td>\n",
       "      <td>1.639056</td>\n",
       "      <td>1.764574</td>\n",
       "      <td>1.627608</td>\n",
       "      <td>1.378489</td>\n",
       "      <td>2.193555</td>\n",
       "      <td>...</td>\n",
       "      <td>1.450361</td>\n",
       "      <td>2.318012</td>\n",
       "      <td>1.711831</td>\n",
       "      <td>1.350849</td>\n",
       "      <td>1.281156</td>\n",
       "      <td>1.894120</td>\n",
       "      <td>2.211649</td>\n",
       "      <td>1.192776</td>\n",
       "      <td>1.523161</td>\n",
       "      <td>1.932269</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Psychological</th>\n",
       "      <td>1.735147</td>\n",
       "      <td>1.268251</td>\n",
       "      <td>2.112183</td>\n",
       "      <td>1.796246</td>\n",
       "      <td>1.169213</td>\n",
       "      <td>1.941144</td>\n",
       "      <td>2.059111</td>\n",
       "      <td>1.473131</td>\n",
       "      <td>1.425397</td>\n",
       "      <td>1.917227</td>\n",
       "      <td>...</td>\n",
       "      <td>1.693619</td>\n",
       "      <td>1.838527</td>\n",
       "      <td>1.291255</td>\n",
       "      <td>1.580304</td>\n",
       "      <td>1.646808</td>\n",
       "      <td>1.513504</td>\n",
       "      <td>2.063678</td>\n",
       "      <td>1.513651</td>\n",
       "      <td>1.959633</td>\n",
       "      <td>1.792571</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>SF</th>\n",
       "      <td>0.884941</td>\n",
       "      <td>1.961064</td>\n",
       "      <td>1.892438</td>\n",
       "      <td>1.548423</td>\n",
       "      <td>2.116370</td>\n",
       "      <td>0.811754</td>\n",
       "      <td>1.839342</td>\n",
       "      <td>1.024918</td>\n",
       "      <td>1.583859</td>\n",
       "      <td>1.698039</td>\n",
       "      <td>...</td>\n",
       "      <td>1.687278</td>\n",
       "      <td>1.809525</td>\n",
       "      <td>1.798528</td>\n",
       "      <td>0.523033</td>\n",
       "      <td>0.252190</td>\n",
       "      <td>1.661739</td>\n",
       "      <td>2.207140</td>\n",
       "      <td>0.953989</td>\n",
       "      <td>1.262952</td>\n",
       "      <td>1.425996</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Short stories</th>\n",
       "      <td>1.551669</td>\n",
       "      <td>1.565454</td>\n",
       "      <td>1.529010</td>\n",
       "      <td>2.029830</td>\n",
       "      <td>1.799736</td>\n",
       "      <td>1.621531</td>\n",
       "      <td>1.709955</td>\n",
       "      <td>1.463425</td>\n",
       "      <td>2.036085</td>\n",
       "      <td>1.622090</td>\n",
       "      <td>...</td>\n",
       "      <td>1.743376</td>\n",
       "      <td>1.466551</td>\n",
       "      <td>2.020577</td>\n",
       "      <td>1.408058</td>\n",
       "      <td>1.572536</td>\n",
       "      <td>0.978745</td>\n",
       "      <td>1.148928</td>\n",
       "      <td>1.927545</td>\n",
       "      <td>1.613913</td>\n",
       "      <td>1.397260</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Detective</th>\n",
       "      <td>1.258270</td>\n",
       "      <td>1.703208</td>\n",
       "      <td>1.925414</td>\n",
       "      <td>1.929091</td>\n",
       "      <td>1.741634</td>\n",
       "      <td>1.838510</td>\n",
       "      <td>1.781085</td>\n",
       "      <td>1.284437</td>\n",
       "      <td>1.366020</td>\n",
       "      <td>1.858208</td>\n",
       "      <td>...</td>\n",
       "      <td>1.495691</td>\n",
       "      <td>1.809830</td>\n",
       "      <td>1.985308</td>\n",
       "      <td>1.560990</td>\n",
       "      <td>1.533802</td>\n",
       "      <td>1.579407</td>\n",
       "      <td>2.182243</td>\n",
       "      <td>0.646736</td>\n",
       "      <td>1.888034</td>\n",
       "      <td>1.546695</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Fairy tales</th>\n",
       "      <td>1.873075</td>\n",
       "      <td>1.843594</td>\n",
       "      <td>1.612974</td>\n",
       "      <td>1.679933</td>\n",
       "      <td>1.921473</td>\n",
       "      <td>1.102801</td>\n",
       "      <td>1.515032</td>\n",
       "      <td>1.502217</td>\n",
       "      <td>2.190022</td>\n",
       "      <td>1.054154</td>\n",
       "      <td>...</td>\n",
       "      <td>1.632737</td>\n",
       "      <td>1.022765</td>\n",
       "      <td>2.121816</td>\n",
       "      <td>1.717970</td>\n",
       "      <td>1.643601</td>\n",
       "      <td>1.479674</td>\n",
       "      <td>1.031512</td>\n",
       "      <td>2.072941</td>\n",
       "      <td>1.968716</td>\n",
       "      <td>1.628436</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Fantasy</th>\n",
       "      <td>1.184918</td>\n",
       "      <td>1.792324</td>\n",
       "      <td>1.440328</td>\n",
       "      <td>1.593097</td>\n",
       "      <td>1.950895</td>\n",
       "      <td>0.712223</td>\n",
       "      <td>1.515398</td>\n",
       "      <td>0.688764</td>\n",
       "      <td>1.777772</td>\n",
       "      <td>1.459827</td>\n",
       "      <td>...</td>\n",
       "      <td>1.676964</td>\n",
       "      <td>1.463093</td>\n",
       "      <td>1.922008</td>\n",
       "      <td>0.689931</td>\n",
       "      <td>0.815957</td>\n",
       "      <td>1.274169</td>\n",
       "      <td>1.733033</td>\n",
       "      <td>1.571738</td>\n",
       "      <td>1.562542</td>\n",
       "      <td>1.193177</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: History</th>\n",
       "      <td>1.300855</td>\n",
       "      <td>2.227037</td>\n",
       "      <td>1.170298</td>\n",
       "      <td>1.588833</td>\n",
       "      <td>2.155026</td>\n",
       "      <td>1.359657</td>\n",
       "      <td>0.945788</td>\n",
       "      <td>1.716985</td>\n",
       "      <td>2.244970</td>\n",
       "      <td>1.287850</td>\n",
       "      <td>...</td>\n",
       "      <td>1.933672</td>\n",
       "      <td>1.428004</td>\n",
       "      <td>2.293459</td>\n",
       "      <td>1.711469</td>\n",
       "      <td>1.638843</td>\n",
       "      <td>1.790961</td>\n",
       "      <td>1.590583</td>\n",
       "      <td>1.739634</td>\n",
       "      <td>0.982214</td>\n",
       "      <td>1.364993</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Horror</th>\n",
       "      <td>1.283352</td>\n",
       "      <td>1.724327</td>\n",
       "      <td>1.829913</td>\n",
       "      <td>1.717999</td>\n",
       "      <td>1.868571</td>\n",
       "      <td>1.065751</td>\n",
       "      <td>1.750609</td>\n",
       "      <td>0.493093</td>\n",
       "      <td>1.902573</td>\n",
       "      <td>1.841810</td>\n",
       "      <td>...</td>\n",
       "      <td>1.986903</td>\n",
       "      <td>1.833912</td>\n",
       "      <td>2.018932</td>\n",
       "      <td>1.017227</td>\n",
       "      <td>0.953273</td>\n",
       "      <td>1.201423</td>\n",
       "      <td>1.536093</td>\n",
       "      <td>1.318500</td>\n",
       "      <td>1.674041</td>\n",
       "      <td>1.483273</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Humor</th>\n",
       "      <td>1.604933</td>\n",
       "      <td>1.620873</td>\n",
       "      <td>1.977243</td>\n",
       "      <td>2.059448</td>\n",
       "      <td>1.775147</td>\n",
       "      <td>2.160005</td>\n",
       "      <td>2.120191</td>\n",
       "      <td>1.965821</td>\n",
       "      <td>0.663161</td>\n",
       "      <td>1.485256</td>\n",
       "      <td>...</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.533133</td>\n",
       "      <td>1.815289</td>\n",
       "      <td>1.570338</td>\n",
       "      <td>1.613391</td>\n",
       "      <td>1.526501</td>\n",
       "      <td>1.813905</td>\n",
       "      <td>1.668468</td>\n",
       "      <td>2.054723</td>\n",
       "      <td>1.979788</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Juvenile</th>\n",
       "      <td>1.555696</td>\n",
       "      <td>1.531109</td>\n",
       "      <td>1.943958</td>\n",
       "      <td>1.482750</td>\n",
       "      <td>1.396973</td>\n",
       "      <td>1.708631</td>\n",
       "      <td>1.377170</td>\n",
       "      <td>1.848656</td>\n",
       "      <td>1.870428</td>\n",
       "      <td>0.453834</td>\n",
       "      <td>...</td>\n",
       "      <td>1.533133</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>2.073147</td>\n",
       "      <td>1.729712</td>\n",
       "      <td>1.801528</td>\n",
       "      <td>1.397363</td>\n",
       "      <td>1.703662</td>\n",
       "      <td>1.658956</td>\n",
       "      <td>1.516475</td>\n",
       "      <td>1.242789</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Man-woman</th>\n",
       "      <td>2.170206</td>\n",
       "      <td>1.448997</td>\n",
       "      <td>2.009864</td>\n",
       "      <td>1.587649</td>\n",
       "      <td>1.186084</td>\n",
       "      <td>1.960758</td>\n",
       "      <td>2.080518</td>\n",
       "      <td>1.890425</td>\n",
       "      <td>1.414654</td>\n",
       "      <td>2.080732</td>\n",
       "      <td>...</td>\n",
       "      <td>1.815289</td>\n",
       "      <td>2.073147</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.859091</td>\n",
       "      <td>1.944848</td>\n",
       "      <td>1.783078</td>\n",
       "      <td>2.070626</td>\n",
       "      <td>1.855606</td>\n",
       "      <td>2.164194</td>\n",
       "      <td>1.894981</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: SF, American</th>\n",
       "      <td>0.961474</td>\n",
       "      <td>1.856624</td>\n",
       "      <td>1.748857</td>\n",
       "      <td>1.460542</td>\n",
       "      <td>1.961320</td>\n",
       "      <td>0.745213</td>\n",
       "      <td>1.847117</td>\n",
       "      <td>0.782088</td>\n",
       "      <td>1.693838</td>\n",
       "      <td>1.693620</td>\n",
       "      <td>...</td>\n",
       "      <td>1.570338</td>\n",
       "      <td>1.729712</td>\n",
       "      <td>1.859091</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>0.216501</td>\n",
       "      <td>1.233214</td>\n",
       "      <td>1.961637</td>\n",
       "      <td>1.269418</td>\n",
       "      <td>1.407958</td>\n",
       "      <td>1.236492</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: SF, Other</th>\n",
       "      <td>0.830094</td>\n",
       "      <td>1.966271</td>\n",
       "      <td>1.794990</td>\n",
       "      <td>1.605728</td>\n",
       "      <td>2.168555</td>\n",
       "      <td>0.538509</td>\n",
       "      <td>1.831827</td>\n",
       "      <td>0.766251</td>\n",
       "      <td>1.718406</td>\n",
       "      <td>1.717692</td>\n",
       "      <td>...</td>\n",
       "      <td>1.613391</td>\n",
       "      <td>1.801528</td>\n",
       "      <td>1.944848</td>\n",
       "      <td>0.216501</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.378383</td>\n",
       "      <td>1.948980</td>\n",
       "      <td>1.189636</td>\n",
       "      <td>1.388220</td>\n",
       "      <td>1.221406</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Short stories, American</th>\n",
       "      <td>1.445655</td>\n",
       "      <td>1.323624</td>\n",
       "      <td>1.747464</td>\n",
       "      <td>1.847356</td>\n",
       "      <td>1.413061</td>\n",
       "      <td>1.773225</td>\n",
       "      <td>1.836786</td>\n",
       "      <td>1.355699</td>\n",
       "      <td>1.727301</td>\n",
       "      <td>1.547334</td>\n",
       "      <td>...</td>\n",
       "      <td>1.526501</td>\n",
       "      <td>1.397363</td>\n",
       "      <td>1.783078</td>\n",
       "      <td>1.233214</td>\n",
       "      <td>1.378383</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.480861</td>\n",
       "      <td>1.600236</td>\n",
       "      <td>1.674493</td>\n",
       "      <td>1.241846</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Subj: Short stories, Other</th>\n",
       "      <td>2.077902</td>\n",
       "      <td>1.958186</td>\n",
       "      <td>1.522220</td>\n",
       "      <td>2.113525</td>\n",
       "      <td>1.935009</td>\n",
       "      <td>1.864062</td>\n",
       "      <td>1.701986</td>\n",
       "      <td>1.878733</td>\n",
       "      <td>2.253139</td>\n",
       "      <td>1.773932</td>\n",
       "      <td>...</td>\n",
       "      <td>1.813905</td>\n",
       "      <td>1.703662</td>\n",
       "      <td>2.070626</td>\n",
       "      <td>1.961637</td>\n",
       "      <td>1.948980</td>\n",
       "      <td>1.480861</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>2.356553</td>\n",
       "      <td>1.719371</td>\n",
       "      <td>1.885848</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Suspense</th>\n",
       "      <td>0.904678</td>\n",
       "      <td>1.790750</td>\n",
       "      <td>2.167119</td>\n",
       "      <td>1.693038</td>\n",
       "      <td>1.722168</td>\n",
       "      <td>1.710909</td>\n",
       "      <td>1.919862</td>\n",
       "      <td>1.226281</td>\n",
       "      <td>1.502489</td>\n",
       "      <td>1.678261</td>\n",
       "      <td>...</td>\n",
       "      <td>1.668468</td>\n",
       "      <td>1.658956</td>\n",
       "      <td>1.855606</td>\n",
       "      <td>1.269418</td>\n",
       "      <td>1.189636</td>\n",
       "      <td>1.600236</td>\n",
       "      <td>2.356553</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.549302</td>\n",
       "      <td>1.500217</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>War</th>\n",
       "      <td>1.204188</td>\n",
       "      <td>2.000363</td>\n",
       "      <td>1.274681</td>\n",
       "      <td>1.726223</td>\n",
       "      <td>2.020034</td>\n",
       "      <td>1.201032</td>\n",
       "      <td>1.219098</td>\n",
       "      <td>1.512776</td>\n",
       "      <td>2.067067</td>\n",
       "      <td>1.471608</td>\n",
       "      <td>...</td>\n",
       "      <td>2.054723</td>\n",
       "      <td>1.516475</td>\n",
       "      <td>2.164194</td>\n",
       "      <td>1.407958</td>\n",
       "      <td>1.388220</td>\n",
       "      <td>1.674493</td>\n",
       "      <td>1.719371</td>\n",
       "      <td>1.549302</td>\n",
       "      <td>0.000000</td>\n",
       "      <td>1.583405</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Western</th>\n",
       "      <td>1.157812</td>\n",
       "      <td>1.685366</td>\n",
       "      <td>1.484902</td>\n",
       "      <td>1.434482</td>\n",
       "      <td>1.702817</td>\n",
       "      <td>1.217329</td>\n",
       "      <td>1.056042</td>\n",
       "      <td>1.424180</td>\n",
       "      <td>2.016481</td>\n",
       "      <td>1.343632</td>\n",
       "      <td>...</td>\n",
       "      <td>1.979788</td>\n",
       "      <td>1.242789</td>\n",
       "      <td>1.894981</td>\n",
       "      <td>1.236492</td>\n",
       "      <td>1.221406</td>\n",
       "      <td>1.241846</td>\n",
       "      <td>1.885848</td>\n",
       "      <td>1.500217</td>\n",
       "      <td>1.583405</td>\n",
       "      <td>0.000000</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>32 rows × 32 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "                               Adventure  Bildungsroman  Biographical  \\\n",
       "Adventure                       0.000000       1.777847      1.718401   \n",
       "Bildungsroman                   1.777847       0.000000      1.948130   \n",
       "Biographical                    1.718401       1.948130      0.000000   \n",
       "Christian                       1.793862       1.804462      1.532363   \n",
       "Domestic                        2.071062       1.124193      2.033399   \n",
       "Fantasy                         1.221882       1.971172      1.169157   \n",
       "Historical                      1.486000       1.974358      1.009559   \n",
       "Horror                          1.163709       1.708332      1.609196   \n",
       "Humor                           1.671675       1.589620      2.133071   \n",
       "Juvenile                        1.521953       1.683243      1.885274   \n",
       "Love                            1.903427       1.406156      1.691991   \n",
       "Mystery                         1.199734       1.659049      2.050531   \n",
       "Novel                           1.600256       1.832113      1.575228   \n",
       "Political                       1.552332       1.980382      1.754389   \n",
       "Psychological                   1.735147       1.268251      2.112183   \n",
       "SF                              0.884941       1.961064      1.892438   \n",
       "Short stories                   1.551669       1.565454      1.529010   \n",
       "Subj: Detective                 1.258270       1.703208      1.925414   \n",
       "Subj: Fairy tales               1.873075       1.843594      1.612974   \n",
       "Subj: Fantasy                   1.184918       1.792324      1.440328   \n",
       "Subj: History                   1.300855       2.227037      1.170298   \n",
       "Subj: Horror                    1.283352       1.724327      1.829913   \n",
       "Subj: Humor                     1.604933       1.620873      1.977243   \n",
       "Subj: Juvenile                  1.555696       1.531109      1.943958   \n",
       "Subj: Man-woman                 2.170206       1.448997      2.009864   \n",
       "Subj: SF, American              0.961474       1.856624      1.748857   \n",
       "Subj: SF, Other                 0.830094       1.966271      1.794990   \n",
       "Subj: Short stories, American   1.445655       1.323624      1.747464   \n",
       "Subj: Short stories, Other      2.077902       1.958186      1.522220   \n",
       "Suspense                        0.904678       1.790750      2.167119   \n",
       "War                             1.204188       2.000363      1.274681   \n",
       "Western                         1.157812       1.685366      1.484902   \n",
       "\n",
       "                               Christian  Domestic   Fantasy  Historical  \\\n",
       "Adventure                       1.793862  2.071062  1.221882    1.486000   \n",
       "Bildungsroman                   1.804462  1.124193  1.971172    1.974358   \n",
       "Biographical                    1.532363  2.033399  1.169157    1.009559   \n",
       "Christian                       0.000000  1.683885  1.342774    1.428869   \n",
       "Domestic                        1.683885  0.000000  2.173295    1.876930   \n",
       "Fantasy                         1.342774  2.173295  0.000000    1.156612   \n",
       "Historical                      1.428869  1.876930  1.156612    0.000000   \n",
       "Horror                          1.684052  1.889925  1.018663    1.731266   \n",
       "Humor                           1.807578  1.487974  2.018280    2.216621   \n",
       "Juvenile                        1.347750  1.520236  1.670681    1.360793   \n",
       "Love                            1.350577  1.223041  1.643120    1.804284   \n",
       "Mystery                         1.760131  1.619112  1.867754    1.907411   \n",
       "Novel                           1.603474  1.826066  1.572825    1.641354   \n",
       "Political                       1.762349  1.958206  1.639056    1.764574   \n",
       "Psychological                   1.796246  1.169213  1.941144    2.059111   \n",
       "SF                              1.548423  2.116370  0.811754    1.839342   \n",
       "Short stories                   2.029830  1.799736  1.621531    1.709955   \n",
       "Subj: Detective                 1.929091  1.741634  1.838510    1.781085   \n",
       "Subj: Fairy tales               1.679933  1.921473  1.102801    1.515032   \n",
       "Subj: Fantasy                   1.593097  1.950895  0.712223    1.515398   \n",
       "Subj: History                   1.588833  2.155026  1.359657    0.945788   \n",
       "Subj: Horror                    1.717999  1.868571  1.065751    1.750609   \n",
       "Subj: Humor                     2.059448  1.775147  2.160005    2.120191   \n",
       "Subj: Juvenile                  1.482750  1.396973  1.708631    1.377170   \n",
       "Subj: Man-woman                 1.587649  1.186084  1.960758    2.080518   \n",
       "Subj: SF, American              1.460542  1.961320  0.745213    1.847117   \n",
       "Subj: SF, Other                 1.605728  2.168555  0.538509    1.831827   \n",
       "Subj: Short stories, American   1.847356  1.413061  1.773225    1.836786   \n",
       "Subj: Short stories, Other      2.113525  1.935009  1.864062    1.701986   \n",
       "Suspense                        1.693038  1.722168  1.710909    1.919862   \n",
       "War                             1.726223  2.020034  1.201032    1.219098   \n",
       "Western                         1.434482  1.702817  1.217329    1.056042   \n",
       "\n",
       "                                 Horror     Humor  Juvenile    ...     \\\n",
       "Adventure                      1.163709  1.671675  1.521953    ...      \n",
       "Bildungsroman                  1.708332  1.589620  1.683243    ...      \n",
       "Biographical                   1.609196  2.133071  1.885274    ...      \n",
       "Christian                      1.684052  1.807578  1.347750    ...      \n",
       "Domestic                       1.889925  1.487974  1.520236    ...      \n",
       "Fantasy                        1.018663  2.018280  1.670681    ...      \n",
       "Historical                     1.731266  2.216621  1.360793    ...      \n",
       "Horror                         0.000000  1.793523  1.822840    ...      \n",
       "Humor                          1.793523  0.000000  1.796998    ...      \n",
       "Juvenile                       1.822840  1.796998  0.000000    ...      \n",
       "Love                           1.612854  1.554887  1.891965    ...      \n",
       "Mystery                        1.404812  1.345732  1.726940    ...      \n",
       "Novel                          1.289061  1.691017  1.662269    ...      \n",
       "Political                      1.627608  1.378489  2.193555    ...      \n",
       "Psychological                  1.473131  1.425397  1.917227    ...      \n",
       "SF                             1.024918  1.583859  1.698039    ...      \n",
       "Short stories                  1.463425  2.036085  1.622090    ...      \n",
       "Subj: Detective                1.284437  1.366020  1.858208    ...      \n",
       "Subj: Fairy tales              1.502217  2.190022  1.054154    ...      \n",
       "Subj: Fantasy                  0.688764  1.777772  1.459827    ...      \n",
       "Subj: History                  1.716985  2.244970  1.287850    ...      \n",
       "Subj: Horror                   0.493093  1.902573  1.841810    ...      \n",
       "Subj: Humor                    1.965821  0.663161  1.485256    ...      \n",
       "Subj: Juvenile                 1.848656  1.870428  0.453834    ...      \n",
       "Subj: Man-woman                1.890425  1.414654  2.080732    ...      \n",
       "Subj: SF, American             0.782088  1.693838  1.693620    ...      \n",
       "Subj: SF, Other                0.766251  1.718406  1.717692    ...      \n",
       "Subj: Short stories, American  1.355699  1.727301  1.547334    ...      \n",
       "Subj: Short stories, Other     1.878733  2.253139  1.773932    ...      \n",
       "Suspense                       1.226281  1.502489  1.678261    ...      \n",
       "War                            1.512776  2.067067  1.471608    ...      \n",
       "Western                        1.424180  2.016481  1.343632    ...      \n",
       "\n",
       "                               Subj: Humor  Subj: Juvenile  Subj: Man-woman  \\\n",
       "Adventure                         1.604933        1.555696         2.170206   \n",
       "Bildungsroman                     1.620873        1.531109         1.448997   \n",
       "Biographical                      1.977243        1.943958         2.009864   \n",
       "Christian                         2.059448        1.482750         1.587649   \n",
       "Domestic                          1.775147        1.396973         1.186084   \n",
       "Fantasy                           2.160005        1.708631         1.960758   \n",
       "Historical                        2.120191        1.377170         2.080518   \n",
       "Horror                            1.965821        1.848656         1.890425   \n",
       "Humor                             0.663161        1.870428         1.414654   \n",
       "Juvenile                          1.485256        0.453834         2.080732   \n",
       "Love                              2.076721        1.781863         1.002725   \n",
       "Mystery                           1.443774        1.788414         1.705293   \n",
       "Novel                             1.847389        1.754118         1.888749   \n",
       "Political                         1.450361        2.318012         1.711831   \n",
       "Psychological                     1.693619        1.838527         1.291255   \n",
       "SF                                1.687278        1.809525         1.798528   \n",
       "Short stories                     1.743376        1.466551         2.020577   \n",
       "Subj: Detective                   1.495691        1.809830         1.985308   \n",
       "Subj: Fairy tales                 1.632737        1.022765         2.121816   \n",
       "Subj: Fantasy                     1.676964        1.463093         1.922008   \n",
       "Subj: History                     1.933672        1.428004         2.293459   \n",
       "Subj: Horror                      1.986903        1.833912         2.018932   \n",
       "Subj: Humor                       0.000000        1.533133         1.815289   \n",
       "Subj: Juvenile                    1.533133        0.000000         2.073147   \n",
       "Subj: Man-woman                   1.815289        2.073147         0.000000   \n",
       "Subj: SF, American                1.570338        1.729712         1.859091   \n",
       "Subj: SF, Other                   1.613391        1.801528         1.944848   \n",
       "Subj: Short stories, American     1.526501        1.397363         1.783078   \n",
       "Subj: Short stories, Other        1.813905        1.703662         2.070626   \n",
       "Suspense                          1.668468        1.658956         1.855606   \n",
       "War                               2.054723        1.516475         2.164194   \n",
       "Western                           1.979788        1.242789         1.894981   \n",
       "\n",
       "                               Subj: SF, American  Subj: SF, Other  \\\n",
       "Adventure                                0.961474         0.830094   \n",
       "Bildungsroman                            1.856624         1.966271   \n",
       "Biographical                             1.748857         1.794990   \n",
       "Christian                                1.460542         1.605728   \n",
       "Domestic                                 1.961320         2.168555   \n",
       "Fantasy                                  0.745213         0.538509   \n",
       "Historical                               1.847117         1.831827   \n",
       "Horror                                   0.782088         0.766251   \n",
       "Humor                                    1.693838         1.718406   \n",
       "Juvenile                                 1.693620         1.717692   \n",
       "Love                                     1.670344         1.815374   \n",
       "Mystery                                  1.643844         1.555382   \n",
       "Novel                                    1.447374         1.437360   \n",
       "Political                                1.350849         1.281156   \n",
       "Psychological                            1.580304         1.646808   \n",
       "SF                                       0.523033         0.252190   \n",
       "Short stories                            1.408058         1.572536   \n",
       "Subj: Detective                          1.560990         1.533802   \n",
       "Subj: Fairy tales                        1.717970         1.643601   \n",
       "Subj: Fantasy                            0.689931         0.815957   \n",
       "Subj: History                            1.711469         1.638843   \n",
       "Subj: Horror                             1.017227         0.953273   \n",
       "Subj: Humor                              1.570338         1.613391   \n",
       "Subj: Juvenile                           1.729712         1.801528   \n",
       "Subj: Man-woman                          1.859091         1.944848   \n",
       "Subj: SF, American                       0.000000         0.216501   \n",
       "Subj: SF, Other                          0.216501         0.000000   \n",
       "Subj: Short stories, American            1.233214         1.378383   \n",
       "Subj: Short stories, Other               1.961637         1.948980   \n",
       "Suspense                                 1.269418         1.189636   \n",
       "War                                      1.407958         1.388220   \n",
       "Western                                  1.236492         1.221406   \n",
       "\n",
       "                               Subj: Short stories, American  \\\n",
       "Adventure                                           1.445655   \n",
       "Bildungsroman                                       1.323624   \n",
       "Biographical                                        1.747464   \n",
       "Christian                                           1.847356   \n",
       "Domestic                                            1.413061   \n",
       "Fantasy                                             1.773225   \n",
       "Historical                                          1.836786   \n",
       "Horror                                              1.355699   \n",
       "Humor                                               1.727301   \n",
       "Juvenile                                            1.547334   \n",
       "Love                                                1.694204   \n",
       "Mystery                                             1.670585   \n",
       "Novel                                               1.764257   \n",
       "Political                                           1.894120   \n",
       "Psychological                                       1.513504   \n",
       "SF                                                  1.661739   \n",
       "Short stories                                       0.978745   \n",
       "Subj: Detective                                     1.579407   \n",
       "Subj: Fairy tales                                   1.479674   \n",
       "Subj: Fantasy                                       1.274169   \n",
       "Subj: History                                       1.790961   \n",
       "Subj: Horror                                        1.201423   \n",
       "Subj: Humor                                         1.526501   \n",
       "Subj: Juvenile                                      1.397363   \n",
       "Subj: Man-woman                                     1.783078   \n",
       "Subj: SF, American                                  1.233214   \n",
       "Subj: SF, Other                                     1.378383   \n",
       "Subj: Short stories, American                       0.000000   \n",
       "Subj: Short stories, Other                          1.480861   \n",
       "Suspense                                            1.600236   \n",
       "War                                                 1.674493   \n",
       "Western                                             1.241846   \n",
       "\n",
       "                               Subj: Short stories, Other  Suspense       War  \\\n",
       "Adventure                                        2.077902  0.904678  1.204188   \n",
       "Bildungsroman                                    1.958186  1.790750  2.000363   \n",
       "Biographical                                     1.522220  2.167119  1.274681   \n",
       "Christian                                        2.113525  1.693038  1.726223   \n",
       "Domestic                                         1.935009  1.722168  2.020034   \n",
       "Fantasy                                          1.864062  1.710909  1.201032   \n",
       "Historical                                       1.701986  1.919862  1.219098   \n",
       "Horror                                           1.878733  1.226281  1.512776   \n",
       "Humor                                            2.253139  1.502489  2.067067   \n",
       "Juvenile                                         1.773932  1.678261  1.471608   \n",
       "Love                                             2.213805  1.767848  1.903915   \n",
       "Mystery                                          2.456080  0.593216  1.926502   \n",
       "Novel                                            1.983155  1.605329  1.524024   \n",
       "Political                                        2.211649  1.192776  1.523161   \n",
       "Psychological                                    2.063678  1.513651  1.959633   \n",
       "SF                                               2.207140  0.953989  1.262952   \n",
       "Short stories                                    1.148928  1.927545  1.613913   \n",
       "Subj: Detective                                  2.182243  0.646736  1.888034   \n",
       "Subj: Fairy tales                                1.031512  2.072941  1.968716   \n",
       "Subj: Fantasy                                    1.733033  1.571738  1.562542   \n",
       "Subj: History                                    1.590583  1.739634  0.982214   \n",
       "Subj: Horror                                     1.536093  1.318500  1.674041   \n",
       "Subj: Humor                                      1.813905  1.668468  2.054723   \n",
       "Subj: Juvenile                                   1.703662  1.658956  1.516475   \n",
       "Subj: Man-woman                                  2.070626  1.855606  2.164194   \n",
       "Subj: SF, American                               1.961637  1.269418  1.407958   \n",
       "Subj: SF, Other                                  1.948980  1.189636  1.388220   \n",
       "Subj: Short stories, American                    1.480861  1.600236  1.674493   \n",
       "Subj: Short stories, Other                       0.000000  2.356553  1.719371   \n",
       "Suspense                                         2.356553  0.000000  1.549302   \n",
       "War                                              1.719371  1.549302  0.000000   \n",
       "Western                                          1.885848  1.500217  1.583405   \n",
       "\n",
       "                                Western  \n",
       "Adventure                      1.157812  \n",
       "Bildungsroman                  1.685366  \n",
       "Biographical                   1.484902  \n",
       "Christian                      1.434482  \n",
       "Domestic                       1.702817  \n",
       "Fantasy                        1.217329  \n",
       "Historical                     1.056042  \n",
       "Horror                         1.424180  \n",
       "Humor                          2.016481  \n",
       "Juvenile                       1.343632  \n",
       "Love                           1.602708  \n",
       "Mystery                        1.593273  \n",
       "Novel                          1.465303  \n",
       "Political                      1.932269  \n",
       "Psychological                  1.792571  \n",
       "SF                             1.425996  \n",
       "Short stories                  1.397260  \n",
       "Subj: Detective                1.546695  \n",
       "Subj: Fairy tales              1.628436  \n",
       "Subj: Fantasy                  1.193177  \n",
       "Subj: History                  1.364993  \n",
       "Subj: Horror                   1.483273  \n",
       "Subj: Humor                    1.979788  \n",
       "Subj: Juvenile                 1.242789  \n",
       "Subj: Man-woman                1.894981  \n",
       "Subj: SF, American             1.236492  \n",
       "Subj: SF, Other                1.221406  \n",
       "Subj: Short stories, American  1.241846  \n",
       "Subj: Short stories, Other     1.885848  \n",
       "Suspense                       1.500217  \n",
       "War                            1.583405  \n",
       "Western                        0.000000  \n",
       "\n",
       "[32 rows x 32 columns]"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "vizmatrix"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [],
   "source": [
    "sansmatrix.fillna(0, inplace = True)\n",
    "negativepart = sansmatrix.values.min()\n",
    "vizmatrix = sansmatrix - negativepart\n",
    "maximumvalue = vizmatrix.values.max()\n",
    "vizmatrix = maximumvalue - vizmatrix\n",
    "for idx in vizmatrix.index:\n",
    "    vizmatrix.loc[idx, idx] = 0\n",
    "    # diagonal should be zero for this purpose\n",
    "scaler = MDS(metric = True, dissimilarity = 'precomputed')\n",
    "coordinates = scaler.fit_transform(vizmatrix)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\nSVqFtGTm3JPgVXNa5ehVc+DckyaS5CR5LnAjsD7w7ikLdvLsSbu+9nraNN7P6dOLzygOsZM0KdoZ\nrF36WOoNb4K/3gVuORHuXouWfFwCHFhVX1hGN4Njjy9J8je0KsqRtMTl0Kr6/BihfBA4Jm3Kzyt6\nRWa43YH3JpkD3AR8qqo+1dct6Otv7DnSxlV1cpINaTfA2wT4NfCsqhprEoXB4/lFkj2Af6eNvw5w\nIUurRNv22B8E/BE4E/iXMfqXJK3CqhZflORwOGcOMNHraamqLwLrTk10k6+q9hq71fTLPac+l6Tl\n06YonX9gu9B0yL6bw/FHVtX10xeZJEnS+DnETtJkmZSx1JIkSdPJCpKkSdOuQdp5rzYrz8VL2ljq\nxTNubLEkSdJoTJAkTao+m85yjaWWJEmabiZIkiRJktR5DZIkSZIkdSZIkiRJktSZIEmSJElSZ4Ik\nSZIkSZ0JkiRJkiR1JkiSJEmS1JkgSZIkSVJngiRJkiRJnQmSJEmSJHUmSJIkSZLUmSBJkiRJUmeC\nJEmSJEmdCZIkSZIkdSZIkiRJktSZIEmSJElSZ4IkSZIkSZ0JkiRJkiR1JkiSJEmS1JkgSZIkSVJn\ngiRJkiRJnQmSJEmSJHUmSJIkSZLUmSBJkiRJUmeCJEmSJEmdCZIkSZIkdSZIkiRJktSZIEmSJElS\nZ4IkSZIkSZ0JkiRJkiR1JkiSJEmS1JkgSZIkSVJngiTdByTZNcmSMdqcn+T5KymefZL8cGXsa4w4\nnprkj9MdhyRJmjlMkKRVQJJ5ST6b5OoktyS5NMnnk6wxgW5qmSurdqiqz00gpmOT3NHjGfo6fVyB\nVJ1QVY8b777GGc/LklywHJsu83mRJEn3LSZI0qrhNOBKYLuqWh94AvA1INMaFRxXVesPfD1zMjpN\nsubybIbJjmaI6ajaJpmf5LeT1d9MtDIr3TPJffW4peligiTNcEk2Ah4OHFVVtwJU1VVVdXRVLelt\nDktyxrDtzkxyyLBl+yS5JMkNvQK07sC6i5PsNUkxb5Hk9CTXJbkpydlJHjOw/h7VniTfTnJEki8n\nuRl4ba+W/e2wfk9K8rER9vck4EjgYUkW9WrWE5Osm+QLva/fJ/lBkt3HiP1V/cPIzUl+lOSpA+t2\nTPLdvu6GHvecFXiqNEPN0KrtA5MsSHJFj+nKJKcm2XS8+1we/bXi6BXY/l6vT8tros/ZZEhyRpK7\n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\nr/32+vaGn0/VW89dzjn3dx/+oL917j0PAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgA\nAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgASwjamqJ1TVqnW0ubiqnrmlalps\nVfWqqvrHmf1PVtVxW7MmAEiSHbZ2AQB3N1W1f5I/T/L4JLsm+V6Szyd5Vnffvp7D9FpPdj9iA2s6\nKcmq7n7hhvTbXLr7jVu7BgBYEzNIAIvvo0muSnJgd++W5LFJPpaktmpVAMA6CUgAi6iq9kjysCTv\n6e6bk6S7r+7uE7p71WhzfFWdM6/fTzxiVlVHVNVlVXVdVZ1UVbvOnFtRVcs3oc47q+pXZvZ/9Fhf\nVT2tqr5TVUtmzu9aVXNV9fjV91lVJ1bV5aPtmVV1v3n1vaqqzh39vlRVj505/xPfwbz69q2qD1TV\nyqq6qqreU1X32tj7BYD1JSABLKLuvj7JxUlOrKrDq+qghZquY6gdkvx2kkckOSjJQ5O8faHGVXVR\nVR27ESWvqaazk6xK8lsz5/5HkpXd/W9j/x+S3JHk55IsSzKX5PR54z0vyYuT7Jbk3CSnLHC9u6iq\nnZJ8ItP3uGxcY+8kf7nBdwQAG0hAAlh8T0xyXpKXJvlCVX27ql69gWN0kmO7++buvjbJ65IcvmDj\n7kd195s3st75Y92Z5H1Jnj9z+Kgk702SqnpMkoOTvHjUd2uSVyZ5clU9aKbPu7v7q93dSU5MckBV\nLV2PEn5n1PGn3f3D7r4xyfFJnlNVHlMEYLOySAPAIhuzSK9J8pqq2jnT7MuJVXVVd5+8AUNdPrN9\nWZKdqmrP7r5u0Ypd2ElJLqqqPZPsnuk9qmePc/sl2TnJd2bySiW5JcmDk1w9jn17Zrzvj8+lmWab\n1ma/JMuq6vqZY5VpxuoBSVZu2K0AwPoTkAAWyQhDS5PMjVmVjM9Tq+olSR49ms5lWt1u1oPyk5Yl\nWTG2909y2yKGo5vn1bD37Mnu/lpVXZhp1uo+Sc7t7tXB51tJbu7uPRaplvm+leRr3f3IzTQ+ACzI\nI3YAi6BqpwOSQ49JDntFct+PVS35jaraoaqWVNVhSR6e5FOj+YVJDq6qg8f5F2cKQHcZMskbq2rp\nWPzg+CSnLmLJFyY5sqruWVX7JXnZGtqcnOkxuyMyHq8bPp9pdumdY1GKVNVeVfWsdVxzfR+P++ck\n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\nOa55eZKXd/dZm2N81s0MEgAArNlcsmJVcsku0+4lu0z7mdscF6uqvZPcL9OsEluJGSQAAFjA9A7S\nIcuT/e85haMLTu++7dLFv049I8lJSU7p7pct9visPwEJAADWYqxetzTJXHffurXrYfMSkAAAAAbv\nIAEAAAwCEgAAwCAgAQAADAISAADAICABAAAMAhIAAMAgIAEAAAwCEgAAwCAgAQAADAISAADAICAB\nAAAMAhIAAMAgIAEAAAwCEgAAwCAgAQAADAISAADAICABAAAMAhIAAMAgIAEAAAwCEgAAwCAgAQAA\nDAISAADAICABAAAMAhIAAMAgIAEAAAwCEgAAwCAgAQAADAISAADAICABAAAMAhIAAMAgIAEAAAwC\nEgAAwCAgAcDdRFVdXFXPHNvLqurOqnrQWtqfU1Wv23IVAmz7BCQA2E5U1XlVdWtV3TT+vl5VL119\nvrsf0d0fmOnSW6FMgO2agAQA249O8vru3q27d0tyeJI3VNVTtnJdi66q7rm1awB+OglIALCd6u7/\nSPKVJI9MkqpaUVXLF2pfVa+qqiuq6rqqenuSmjn3xKpaNa/98VV1zsz+nVX1P6vqP8cM1meq6qEz\n5+9VVadW1XdHLYdX1aqqOnScf3RV/VtV3TDafLqqdh/nPllVf1FVH66qG5K8bBw/rKq+WFXfq6ov\nVNXvzlzvyKr6RlX98bivG6vqzVW1R1WdNfa/UlW/OtPnyVV1QVVdX1XfqaozqmqvmfOfrKq3jv43\njfGfvuH/dYDtlYAEANup8Q//hyX5zHq0PTzJS5P8TpIHJLkuyaEzTTprfiRv/rEjk/xekvsmuTLJ\nO2fO/VWS/ZI8NFNo+63c9d8af53kY9197yT3S/LyJD+cOf+8JO8Y5/+qqn4lyfuSHDuu9+okZ1TV\nL870WZZktyT7J3lckpck+WiSP09y7yQfTnLSTPtbk/zRGO+RSR6Y5B3z7vGIJG8Zs3R/neSUqtp5\nDd8NcDckIAHA9uU1Y/bj+0k+leTvknxuPfodnuQ93f3F7r49yRuTfHsjrv/m7r6qu1clOTnJY5Kk\nqu6RZHmS13b3d7v75iTHZWaWKlMYenBVLevuO7r7P7v7BzPnz+ru85Oku2/NFMbO6u6Pd/ed3f3R\nTIHn+TN9bunu13f37d395SQXJflcd3+uuztTwDqgqpaOcT/T3Rf25Jokb0ky/xHFvx+zc0lyQpLd\nkxy4Ed8VsB0SkABg+/Jn3b1Hd++aZN8kD0/y3vXot0+Sy1bvjPDwrY24/myo+n6SpWNu+0m5AAAK\nKklEQVR7zyQ7Jrl85vz88Y9KsiTJp6vq0qp6/QhWq102r/2+SVbMO3bpOL7aNfPO35Jk5bz9rK6z\nqg6uqrOrauV4lO+MJHvNG+NH/bv7Lv2Buz8BCQC2YVW1c1XttaZHvLr76iTvT/Lf1mOoqzI9/jZr\n2cz2XJIl8xZHWHCJ8DW4LtMM0eyYs9vp7m919x90975Jnp7kDzM9zrbanfPGvGINNT9kHN9YZya5\nMMnPjkf5nr0JYwF3QwISAGyjqnY6IDn0mOTIo6fP7HzX8/WAJM9M8sWFhpjZPi3JC6vqv1bVDlX1\nqkzvIq329SQ3J/nDmjwuyX9f31q7+84kpyf531W153ik7c8y8w5TVR1RVQ8cuzcluX38LeSUJIdV\n1VOr6h5V9ZuZ3n9anxmzWbPfw9IkN3b396vqwUleuYFjAXdzAhIAbIOmGaNDlifvnktOvnL63Pn+\nSV67+neQknwh0yNvzxnd5i+o8KP97j4104IK/zT67Jnk/JnzN2daJOEVSW5IcnSmd4zWON4CXpLp\nEbuvJ/lSko+P47eNzycnubCq5pL8e5L3dff7Fhq7uz+T6T2ktyW5Psmbkjynu9f2ztW6Fpp4YZIX\njO/vrEwzcBvSH7ibq+kRZABgWzItPX3k0VM4Wu2ofZJT3tnd1269ytZfVT0s0zLke3f3xiwIAbDF\nmUECgG3TXLJiVXLJLtPuJbtM+5nbqlWtRVXtX1WPHY/D3T/J25OcLxwB2xMzSACwjZreQTpkebL/\nPadwdMHp3bddurXrWkhVHZTpkbVlmVaPOz/JH3f3yrV2BNiGCEgAsA0bq9ctTTI3fhsIgM1IQAIA\nABi8gwQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABACwiarq4qp6\n5tauA9h01d1buwYA4KdUVZ2X5JAktyW5M8l3k3w2yTu6+8KtWNoaVdWyJCuS7NPdV2/teoDFZwYJ\nANiaOsnru3v37r5PkicluSzJZ6vqGVu1sjWrTDUDd1MCEgCwzejuK7r7tUlOTfLOJKmqParq1Kpa\nWVVXV9XJVXWf1X2qakVVvbqqPlFVc1V1UVU9sqp+v6q+UVXfq6q/rap7zPTZt6o+MMa8qqreU1X3\nmjn/hnH8xqr6f1X1R+PUF8fn16vqpqp69UwNy2f6/3xV/UtVXVNV11XVxzfftwYsJgEJANgWnZlk\n76p6aJLTk+ye5GFJDkqyZ5LT5rU/IsmLktw7yZeSfDjJE5M8MsnPJ3l6kmclSVXtlOQTSS5OsizJ\nzyXZO8k7xvmnjvF+sbt3T/JLST49rvOo8Xlgd+/W3W+YX3hVPSDJeUk+OcZ/QJI3bewXAWxZAhIA\nsC26cnzumeTXk7ysu2/q7huTvDzJ06rq/jPtT+jur3f3HZkC1f5JjuvuW7v7ikyB5TGj7e8kSXf/\naXf/cIx5fJLnVlUl+WGSnZI8sqp26u7ruvuiefXVWmo/PMk3uvvN3f2D7r69uz+xkd8DsIUJSADA\nFldVO1fVXln43yL7jM8dMr3zc9nMuUvH574zx1bObN+S5I7uvn7esaVje78ky6rq+tV/Sc5NckeS\nB3T3+UmOS/KaJNdU1dlV9QsbcHv7Jfn6BrQHtiECEgCwRVXtdEBy6DHJkUcnO++bZI81NPv9JFcl\n+Wam2Zr9Zs4dkCk0Xb6RJXwryde6e4+Zv/t0967dvTJJuvvE7n58kvsnuSjJh0bfO7P22aNkCnMH\nbmRtwFYmIAEAW0xV7Zwcsjx591xy8pXJfe9I9nrUdDypqn2q6k8zvQP0krGU9seTvK2qdh+LM7w1\nyUe7+5qNLOOfk+xYVa9avTBDVe1dVb87tn+xqh5XVTsmWZVkLsnto++1mWaa1haA3pfkYVV1TFX9\nTFXds6qespG1AluYgAQAbElLk/3vmRx0y7S75I7kuidmepTthiTnJ3lIksd29z+MPs/JFFK+luQr\nSa5PcuTMmBu07HZ3/yDJkzMtzvDVcd1z8uMFGO6V5C8zhaFrkzw1Y4GH7r41yWuTnDkez3vV/BrG\nLNQTM707dWWmx/9esSE1AluPH4oFALaYaabo0GOmGaSDbkku2SV50dLkU28Z4QNgqxKQAIAtanoH\n6ZDl00zSilXJBad333bpunsCbH4CEgCwxY13jpYmmTNzBGxLBCQAAIDBIg0AAACDgAQAADAISAAA\nAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACD\ngAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AE\nAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAA\nMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAI\nSAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgA\nAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAA\ng4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOA\nBAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQA\nADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAw\nCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhI\nAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAA\nAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACD\ngAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AE\nAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAA\nMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAI\nSAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgA\nAACDgAQAADAISAAAAIOABAAAMAhIAAAAg4AEAAAwCEgAAADD/wdZsgSt/NOd9QAAAABJRU5ErkJg\ngg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x124cd20f0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(figsize = (14, 16))\n",
    "genres = vizmatrix.index.tolist()\n",
    "colors=np.linspace(0, 1, 7)\n",
    "ax.scatter(coordinates[ :, 0], coordinates[ : , 1], alpha = 0.4)\n",
    "\n",
    "for i in range(len(genres)):\n",
    "    thisx = coordinates[i, 0]\n",
    "    thisy = coordinates[i, 1]\n",
    "    name = genres[i]\n",
    "    ax.annotate(name, (thisx, thisy), fontsize = 13)\n",
    "plt.axis('off')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It's notable that some genres are very tightly clustered: different versions of science fiction and mystery, for instance. On the other hand, realist genres—e.g. \"Short stories\"—can be spread out more."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Write the map to file\n",
    "\n",
    "with open('../results/predictivetopicmap.tsv', mode = 'w', encoding = 'utf-8') as f:\n",
    "    f.write('genre\\tmeandate\\txcord\\tycord\\n')\n",
    "    for i, genre in enumerate(genres):\n",
    "        xcord = str(coordinates[i, 0])\n",
    "        ycord = str(coordinates[i, 1])\n",
    "        meandate = str(genrenamedf.loc[genrenamedf.genre == genre, 'meandate'].values[0])\n",
    "        f.write(genre + '\\t' + meandate + '\\t' + xcord + '\\t' + ycord + '\\n')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### A strictly social map"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [],
   "source": [
    "social.fillna(0, inplace = True)\n",
    "negativepart = social.values.min()\n",
    "vizmatrix = social - negativepart\n",
    "maximumvalue = vizmatrix.values.max()\n",
    "vizmatrix = maximumvalue - vizmatrix\n",
    "for idx in vizmatrix.index:\n",
    "    vizmatrix.loc[idx, idx] = 0\n",
    "    # diagonal should be zero for this purpose\n",
    "scaler = MDS(metric = True, dissimilarity = 'precomputed')\n",
    "coordinates = scaler.fit_transform(vizmatrix)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x11fab22e8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots(figsize = (14, 16))\n",
    "genres = vizmatrix.index.tolist()\n",
    "colors=np.linspace(0, 1, 7)\n",
    "ax.scatter(coordinates[ :, 0], coordinates[ : , 1], alpha = 0.4)\n",
    "\n",
    "for i in range(len(genres)):\n",
    "    thisx = coordinates[i, 0]\n",
    "    thisy = coordinates[i, 1]\n",
    "    name = genres[i]\n",
    "    ax.annotate(name, (thisx, thisy), fontsize = 13)\n",
    "plt.axis('off')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "I'm not convinced that is preferable to the predictive map! Look, for instance, at Subj: Detective and Mystery, separated by Humor. Look also at Humor and Subj: Humor. I think my priors about generic similarity across time might have been too weak."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Write the map to file\n",
    "\n",
    "with open('../results/socialmap.tsv', mode = 'w', encoding = 'utf-8') as f:\n",
    "    f.write('genre\\tmeandate\\txcord\\tycord\\n')\n",
    "    for i, genre in enumerate(genres):\n",
    "        xcord = str(coordinates[i, 0])\n",
    "        ycord = str(coordinates[i, 1])\n",
    "        meandate = str(genrenamedf.loc[genrenamedf.genre == genre, 'meandate'].values[0])\n",
    "        f.write(genre + '\\t' + meandate + '\\t' + xcord + '\\t' + ycord + '\\n')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Just noodling around\n",
    "\n",
    "Ignore the calculations below. They weren't used in the article."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 96,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x127bbc748>"
      ]
     },
     "execution_count": 96,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x127b56320>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "selfavg = []\n",
    "compared = []\n",
    "socvals = []\n",
    "\n",
    "for idx1 in allmatrix.index:\n",
    "    for idx2 in allmatrix.index:\n",
    "        if idx1 == idx2:\n",
    "            continue\n",
    "            \n",
    "        self1 = allmatrix.loc[idx1, idx1]\n",
    "        self2 = allmatrix.loc[idx2, idx2]\n",
    "        compare = allmatrix.loc[idx1, idx2]\n",
    "        \n",
    "        if pd.isnull(self1) and pd.isnull(self2):\n",
    "            continue\n",
    "        elif pd.isnull(self1):\n",
    "            theself = self2\n",
    "        elif pd.isnull(self2):\n",
    "            theself = self1\n",
    "        else:\n",
    "            theself = (self1 + self2) / 2\n",
    "        \n",
    "        compared.append(compare)\n",
    "        selfavg.append(theself)\n",
    "        socvals.append(social.loc[idx1, idx2])\n",
    "\n",
    "plt.scatter(selfavg, compared)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 97,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(-0.021197636080041111, 0.60431219482369003)"
      ]
     },
     "execution_count": 97,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pearsonr(selfavg, socvals)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 88,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(0.2356293195663533, 5.1535770029047557e-09)"
      ]
     },
     "execution_count": 88,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pearsonr(selfavg, compared)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 95,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<table class=\"simpletable\">\n",
       "<caption>OLS Regression Results</caption>\n",
       "<tr>\n",
       "  <th>Dep. Variable:</th>            <td>y</td>        <th>  R-squared:         </th> <td>   0.497</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Model:</th>                   <td>OLS</td>       <th>  Adj. R-squared:    </th> <td>   0.496</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Method:</th>             <td>Least Squares</td>  <th>  F-statistic:       </th> <td>   592.6</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Date:</th>             <td>Fri, 18 May 2018</td> <th>  Prob (F-statistic):</th> <td>1.61e-91</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Time:</th>                 <td>22:42:34</td>     <th>  Log-Likelihood:    </th> <td> -836.17</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>No. Observations:</th>      <td>   600</td>      <th>  AIC:               </th> <td>   1674.</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Df Residuals:</th>          <td>   599</td>      <th>  BIC:               </th> <td>   1679.</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Df Model:</th>              <td>     1</td>      <th>                     </th>     <td> </td>   \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Covariance Type:</th>      <td>nonrobust</td>    <th>                     </th>     <td> </td>   \n",
       "</tr>\n",
       "</table>\n",
       "<table class=\"simpletable\">\n",
       "<tr>\n",
       "  <td></td>     <th>coef</th>     <th>std err</th>      <th>t</th>      <th>P>|t|</th>  <th>[0.025</th>    <th>0.975]</th>  \n",
       "</tr>\n",
       "<tr>\n",
       "  <th>x</th> <td>    2.7847</td> <td>    0.114</td> <td>   24.342</td> <td> 0.000</td> <td>    2.560</td> <td>    3.009</td>\n",
       "</tr>\n",
       "</table>\n",
       "<table class=\"simpletable\">\n",
       "<tr>\n",
       "  <th>Omnibus:</th>       <td>10.214</td> <th>  Durbin-Watson:     </th> <td>   0.688</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Prob(Omnibus):</th> <td> 0.006</td> <th>  Jarque-Bera (JB):  </th> <td>  10.546</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Skew:</th>          <td>-0.318</td> <th>  Prob(JB):          </th> <td> 0.00513</td>\n",
       "</tr>\n",
       "<tr>\n",
       "  <th>Kurtosis:</th>      <td> 2.869</td> <th>  Cond. No.          </th> <td>    1.00</td>\n",
       "</tr>\n",
       "</table>"
      ],
      "text/plain": [
       "<class 'statsmodels.iolib.summary.Summary'>\n",
       "\"\"\"\n",
       "                            OLS Regression Results                            \n",
       "==============================================================================\n",
       "Dep. Variable:                      y   R-squared:                       0.497\n",
       "Model:                            OLS   Adj. R-squared:                  0.496\n",
       "Method:                 Least Squares   F-statistic:                     592.6\n",
       "Date:                Fri, 18 May 2018   Prob (F-statistic):           1.61e-91\n",
       "Time:                        22:42:34   Log-Likelihood:                -836.17\n",
       "No. Observations:                 600   AIC:                             1674.\n",
       "Df Residuals:                     599   BIC:                             1679.\n",
       "Df Model:                           1                                         \n",
       "Covariance Type:            nonrobust                                         \n",
       "==============================================================================\n",
       "                 coef    std err          t      P>|t|      [0.025      0.975]\n",
       "------------------------------------------------------------------------------\n",
       "x              2.7847      0.114     24.342      0.000       2.560       3.009\n",
       "==============================================================================\n",
       "Omnibus:                       10.214   Durbin-Watson:                   0.688\n",
       "Prob(Omnibus):                  0.006   Jarque-Bera (JB):               10.546\n",
       "Skew:                          -0.318   Prob(JB):                      0.00513\n",
       "Kurtosis:                       2.869   Cond. No.                         1.00\n",
       "==============================================================================\n",
       "\n",
       "Warnings:\n",
       "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n",
       "\"\"\""
      ]
     },
     "execution_count": 95,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df = pd.DataFrame({'x': selfavg, 'y': compared})\n",
    "X = df[['x']]\n",
    "y = df['y']\n",
    "mod = sm.OLS(y, X)\n",
    "res = mod.fit()\n",
    "res.summary()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 100,
   "metadata": {},
   "outputs": [],
   "source": [
    "adjusted = np.array(compared) - (np.array(selfavg) * .278)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 101,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(-0.5440410426854505, 1.5990582235379594e-47)"
      ]
     },
     "execution_count": 101,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pearsonr(adjusted, socvals)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.5.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
